Domanda

Ho problemi fusione dei due concetti di utilizzare uno SplitViewController a mio avviso principale e avendo il controller "RootView" che i controlli a sinistra riquadri visualizzazione della tabella a comparsa / barra laterale.

Voglio avere l'atto sinistra "RootView" come un menu di navigazione, ma come faccio a fare questo quando il RootView è legato attraverso MainWindow.xib nel riquadro a sinistra della SplitView?

In sostanza, voglio che la navigazione a sinistra per lavorare, proprio come il built-in applicazioni di posta elettronica della cartella di navigazione drill-down. C'è un progetto di iPad esempio là fuori che utilizza sia SplitView e NavigationView per il riquadro a sinistra / Root?

È stato utile?

Soluzione

Dopo aver creato un progetto SplitView, aprire il file RootViewController.m e sguardo al metodo di -tableViewDidSelectRowAtIndexPath. Vedrete che la voce che si è fatto clic viene quindi impostata come una proprietà della DetailViewController.

Il design che stai cercando richiederebbe che si preme un altro controller della vista nello stack di navigazione. Quindi, se si immagina l'applicazione di posta elettronica, quando un utente sceglie una cartella, il detailview non è aggiornato, ma il prossimo livello di Posta in arrivo viene inserito nello stack. Quando un utente seleziona un messaggio dalla posta in arrivo, la vista di dettaglio viene aggiornata con il contenuto del messaggio, e il RootViewController solo soggiorni dove sta.

nel metodo -tableViewDidSelectRowAtIndexPath, dichiarare la nuova visualizzazione del controller

NextViewController *nextView = [[NextViewController alloc] initWithStyle:UITableViewStylePlain];
//This assumes you have another table view controller called NextViewController
//We assign it to the instance variable "nextView"

[self.navigationController pushViewController:nextView animated:YES];
//tells the navigation controller to "slide" the "nextView" instance on top
//if animated:NO it wouldn't slide, it would just "update"

[nextView release];
//release the viewController, it's now retained automatically by the NavigationController

Ha senso?

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top