Domanda

Sono stato nel processo di apprendimento per costruire applicazioni per iPhone per le ultime due settimane. Ho ottenuto attraverso una discreta quantità di contenuti, e ora sto cercando di creare un popup modale con presentModalView.

Posso possibile creare correttamente e far scorrere una vista, ma ho notato che le opinioni modali non forniscono voi con una barra di navigazione di default nella parte superiore della finestra, che ha senso per la flessibilità immagino. La maggior parte delle viste modali che ho visto hanno un pulsante "Done" o "Salva", come navigationItems su quello che sembra essere un UINavigationController "Annulla" e. Il mio pensiero poi era solo creare un'istanza di un controller di navigazione e spingere la visione unica nello stack View Controller, e presentModalView: navController.view ...

perché la vista è relativamente complesso, stavo cercando di tracciare sia l'UINavigationController, con i pulsanti della barra, e la vista speravo di spingere nello stack in un unico XI ter - non importa quello che provo, posso 't sembrano avere i collegamenti corretti. si può anche fare questo? O devo creare una classe / XI ter separata per la vista che ho intenzione di spingere sul controller di navigazione? Sembra un sacco di classi e file per una schermata, quindi la mia sensazione è Devo mancare qualcosa.

A questo punto, avrei potuto fare a livello di codice circa un'ora e mezzo fa ... Tuttavia, questo è un vero e proprio ronzino, dal momento che sembra IB GRANDE per alcune cose. Qualcuno ha un'esperienza con una situazione come questa?

Grazie, Josh

È stato utile?

Soluzione

Se non avete intenzione di utilizzare questo nuovo XIB per la navigazione, non ha senso nel fare un controller di navigazione.

Nel costruttore di interfaccia, è sufficiente trascinare un UINavigationBar alla parte superiore della vostra vista, e aggiungere un pulsante "Done". Ora, aggiungere un IBAction al pulsante fatto per chiudere il controller della vista. Il tuo codice ViewController per respingere IBAction dovrebbe essere simile a questo:

-(IBAction)dismiss {
    //Any logic before dismissing the modal view
    [super dismissModalViewControllerAnimated:YES];
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top