Ho personalizzato la barra del titolo del controller di navigazione con un'immagine di sfondo, ma ho davvero difficoltà a cambiare il colore di sfondo del pulsante Indietro in modo che corrisponda a sotto la barra del titolo verde. Sono abbastanza nuovo per lo sviluppo di iOS. Qualcuno può suggerire cosa si potrebbe fare?ios 5 cambia lo sfondo del pulsante Indietro nel controller di navigazione in trasparente
Qui è il codice per che ho usato per cambiare la barra del titolo del controller di navigazione, nel caso in cui esso aiuta:
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
if ([self.navigationController.navigationBar respondsToSelector:@selector(setBackgroundImage:forBarMetrics:)]) {
UIImage *image = [UIImage imageNamed:@"greenbar.png"];
[self.navigationController.navigationBar setBackgroundImage:image forBarMetrics:UIBarMetricsDefault];
// [[UIBarButtonItem appearance] setBackButtonBackgroundImage:image forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];
}
//change back button image
}
EDIT: Dopo aver fatto un po 'di ricerca sono riuscito ad ottenere ciò che volevo . Ecco il codice per modificare l'immagine di sfondo per il pulsante indietro:
UIImage *image1 = [UIImage imageNamed:@"back-bt.png"];
[[UIBarButtonItem appearance] setBackButtonBackgroundImage:image1 forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];
Il codice di cui sopra si aggiunge l'immagine per tutti i pulsanti posteriori del controller di navigazione.
La soluzione non funzionerà quando il controller di navigazione è presentato in un controller popover. Il motivo è che lo sfondo della barra di navigazione e dello sfondo della barra di navigazione sullo sfondo del popover vengono disegnati in modo diverso. –