Su un controller di visualizzazione, ho un pulsante che presenterà un altro controller di visualizzazione. Dal secondo controller di visualizzazione, posso passare ad altri controller di visualizzazione, ma non necessariamente a quello che mi ha portato qui. Se questo è il caso, come posso rimuovere il controller di visualizzazione originale?iPhone - Rimozione di un controller di visualizzazione presentato
9
A
risposta
25
La tua descrizione è un po 'poco chiaro qui. Ci potrebbero essere 3 casi diverso qui:
- si muove attraverso la navigazione gerarchia di controllo
- Scoppio di gerarchia controller di navigazione a un altro controller di vista
- Solo l'aggiunta di un altro controller vista corrente nella navigazione pila regolatore
Nel primo caso è possibile utilizzare metodi di UINavigationController:
- (UIViewController *)popViewControllerAnimated:(BOOL)animated
- (NSArray *)popToViewController:(UIViewController *)viewController animated:(BOOL)animated
- (NSArray *)popToRootViewControllerAnimated:(BOOL)animated
e utilizzare la proprietà viewControllers per spostarsi nello stack.
Ina seconda, se si vuole uscire la gerarchia ad uno completamente un altro controller vista, poi semplicemente farlo da:
[[[UIApplication sharedApplication] keyWindow].rootViewController dismissViewControllerAnimated:YES completion:nil];
[[UIApplication sharedApplication] keyWindow].rootViewController = newController;
o meglio ancora: aggiungi seconda linea in blocco il completamento della prima linea.
O nel terzo caso, se si desidera solo fare un'eccezione, ma per il resto rimanere in pila controller di navigazione, quindi utilizzare metodi:
- (void)addChildViewController:(UIViewController *)childController
- (void)removeFromParentViewController
17
Dipende da come è stato effettivamente presentato il controller di visualizzazione corrente. Se era modale, quindi
[self.presentingViewController dismissViewControllerAnimated:YES completion:nil];
Se è stato spinto con un controller di navigazione:
[self.navigationController popViewControllerAnimated:YES];
Problemi correlati
- 1. Un controller di visualizzazione presentato può anche essere un controller di visualizzazione presentante?
- 2. OS-X: Come impedire il ridimensionamento di un controller di visualizzazione presentato come foglio
- 3. UINavigationController all'interno di un UITabBarController all'interno di un UISplitViewController presentato modalmente su iPhone
- 4. iPhone Spingere il controller di visualizzazione nella direzione sinistra
- 5. Eliminazione di due controller di visualizzazione modali
- 6. Presentazione di un controller di visualizzazione con trasparenza e animazione
- 7. ios: come eliminare un controller di visualizzazione modale e quindi inserire un controller di visualizzazione spinto
- 8. Transizione del controller di visualizzazione interattiva dal controller di visualizzazione con barra di stato nascosta
- 9. come ignorare un controller di visualizzazione modale presentato come "Foglio modulo" quando un tocco si verifica all'esterno del foglio modulo?
- 10. Avviso su due controller di navigazione presentato come modale
- 11. Come caricare un altro controller di visualizzazione dal file di implementazione del controller di visualizzazione corrente?
- 12. Ridimensiona i controller di visualizzazione principale e di dettaglio in un controller di visualizzazione divisa?
- 13. Collegamento di controller di visualizzazione figlio a un controller di visualizzazione padre nello storyboard
- 14. Come posso cambiare le viste a livello di programmazione in un controller di visualizzazione? (Xcode, iPhone)
- 15. Rimozione di una visualizzazione da un'attività
- 16. Presenta un controller di visualizzazione modale con sfondo trasparente
- 17. Presentazione di un controller di visualizzazione senza modificare il colore della barra di stato, come UIAlertController
- 18. iPhone e dati principali - Rimozione di NSManagedObject?
- 19. Chiamare una funzione da un altro controller di visualizzazione per iphone
- 20. Aggiunta di un controller di visualizzazione come subview in un altro controller di vista
- 21. Visualizzazione di un valore in un servizio da un controller
- 22. Come nascondere la barra di stato di un controller di visualizzazione singola in iOS 9?
- 23. Caricamento di un controller di visualizzazione in una vista Xcode
- 24. Tentativo di inizializzare un controller di visualizzazione dallo storyboard
- 25. Come chiamare un controller di visualizzazione a livello di codice?
- 26. Rotazione iOS 6: attivazione di un controller di visualizzazione
- 27. Come si accede al controller di visualizzazione di un super?
- 28. Visualizzazione di un modello associato a un controller separato
- 29. Come passare da un controller di visualizzazione a un altro controller di vista
- 30. Barra di stato nascondiglio quando controller della vista del paesaggio di sola è presentato oltre View Controller ritratto di sola
potete inserire codice come a ciò che avete provato finora. Inoltre, cosa stai usando per caricare il controller di visualizzazione. È UINavigationController? Hai provato a scattare il controller di visualizzazione? –
sembra una domanda per me ... per favore incolla un po 'di codice che hai provato finora ... –
Se uso useViewController o popViewController, nessuno di questi mi porterà al controller di visualizzazione originale? Sto cercando un modo, se possibile, di ignorare il controller di visualizzazione iniziale. – Carmichael