2012-12-22 12 views
5

Ho scritto un'applicazione principale/dettagli utilizzando il modello principale/dettaglio di XCode. Dopo aver avviato l'app, il titolo del pulsante di navigazione per la vista principale è solo "Master". Ora non so rinominare quel pulsante, ma sfortunatamente non so come accedere a questo pulsante. In appdelegate.m c'è il seguente codice per inizializzare i punti di vista:Oggetto di navigazione nell'applicazione master/dettagli

MasterViewController *masterViewController = [[MasterViewController alloc] init]; 
UINavigationController *masterNavigationController = [[UINavigationController alloc] initWithRootViewController:masterViewController]; 

DetailViewController *detailViewController = [[DetailViewController alloc] initWithNibName:@"DetailViewController" bundle:nil]; 
UINavigationController *detailNavigationController = [[UINavigationController alloc] initWithRootViewController:detailViewController] 

ho provato questi modi senza successo:

masterViewController.navigationItem.title = @"newTitle"; 

o

masterNavigationController.navigationItem.title = @"newTitle"; 

Come non ero sicuro , se il nome del pulsante è solo il titolo della vista dietro idt, ho anche provato che:

masterViewController.title = @ "newTitle";

Niente ha funzionato. Ma poiché il titolo del pulsante è "Master" e sicuramente non l'ho impostato, credo che ci sia un modo per impostarlo. Qualcuno sa come farlo?

solo per mostrare il bottone: enter image description here

+0

Il pulsante di navigazione? Stai parlando del pulsante Indietro? – SEG

+0

Forse ... Non so davvero se si tratta del pulsante Indietro o del pulsante di navigazione. È l'unico pulsante che appare dopo l'avvio dell'app. Posso usarlo per far apparire il MasterView. – usermho

risposta

6

Se si desidera creare l'applicazione principale/dettagli utilizzando il modello principale/dettagli, passare al file "MasterViewController.m" e modificare la stringa "Master" come desiderato. Vedere l'immagine qui sotto sarebbe così nel tuo MasterViewController.m. enter image description here

UPDATE: e anche cambiare il nome barButtonItem nella DetailViewController.m come come qui di seguito. Questo farà il trucco. enter image description here

+0

Questo è esattamente quello che ho fatto.Ma nel frattempo, ho cambiato il mio metodo init e al suo interno ho impostato il titolo con una semplice stringa: self.title = @ "newTitle" E questo cambia solo il titolo nella vista ma non il titolo del pulsante! – usermho

+0

@usermho controlla la mia risposta aggiornata .. –

+0

Yeaah! Questo è tutto! E 'stato davvero difficile! – usermho

1

provare self.navigationItem.title = @"newTitle"; all'interno viewDidLoad() del file MasterViewController.m. oppure self.title = @"newTitle" all'interno del metodo init(). HTH.

+0

Siamo spiacenti, ma questo non funziona. Non è il samr come masterViewController.title = @ "newTitle"? – usermho

1

Presumo che si stia tentando di modificare il titolo della proprietà del pulsante Indietro. Questo viene fatto inserendo il seguente codice nel metodo -viewDidLoad di MasterViewController.

self.navigationItem.backBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"newTitle" style:UIBarButtonItemStyleBordered target:nil action:nil]; 
0

E 'stato un po' e in qualche modo con l'attuale versione di Xcode 8.3.2 funziona diverso:

Se avete creato application/Particolare master tramite master/dettaglio Template, poi vai al tuo Main.storyboard e seleziona lo Master nello Master Scene e poi mostra "Impostazioni". Nell'area dell'oggetto Navigazione è possibile modificare Title.

È possibile farlo per Master e Detail. enter image description here

Problemi correlati