Auf einem View-Controller habe ich eine Schaltfläche, die einen anderen View-Controller darstellt. Vom zweiten View-Controller aus kann ich zu anderen View-Controllern gehen, aber nicht unbedingt zu dem, der mich hierher gebracht hat. Wenn dies der Fall ist, wie kann ich den ursprünglichen View-Controller entfernen?iPhone - Entfernen eines präsentierten View-Controllers
9
A
Antwort
25
Ihre Beschreibung hier etwas unklar ist. Es könnte drei verschiedene Fälle hier:
- Umzug durch Navigation Controller Hierarchie
- aus Navigationssteuerung Hierarchie brechen zu einer anderen Ansicht Controller
- nur das Hinzufügen eines weiteren View-Controller Strom in Navigation-Controller-Stack
Im ersten Fall können Sie die Methoden von UINavigationController verwenden:
- (UIViewController *)popViewControllerAnimated:(BOOL)animated
- (NSArray *)popToViewController:(UIViewController *)viewController animated:(BOOL)animated
- (NSArray *)popToRootViewControllerAnimated:(BOOL)animated
und navigieren Sie mithilfe der viewControllers-Eigenschaft durch den Stapel.
Ina zweite, wenn Sie die Hierarchie auf eine völlig andere Ansicht-Controller zu durchbrechen wollen, dann tun Sie es einfach durch:
[[[UIApplication sharedApplication] keyWindow].rootViewController dismissViewControllerAnimated:YES completion:nil];
[[UIApplication sharedApplication] keyWindow].rootViewController = newController;
oder noch besser: in zweiter Linie in Vollendung Block ersten Zeile.
Oder in dritten Fall, wenn Sie nur eine Ausnahme machen wollen, aber ansonsten in der Navigation-Controller-Stack bleibt, dann Methoden verwenden:
- (void)addChildViewController:(UIViewController *)childController
- (void)removeFromParentViewController
17
Das hängt davon ab, wie Sie den aktuellen View Controller tatsächlich dargestellt haben. Wenn es modal, dann
[self.presentingViewController dismissViewControllerAnimated:YES completion:nil];
Wenn es eine Navigationssteuerung gedrückt wurde mit:
[self.navigationController popViewControllerAnimated:YES];
Verwandte Themen
- 1. Viewcontrollers hinzufügen/entfernen view
- 2. So leeren Sie einen UIPageViewController (entfernen Sie ViewControllers innerhalb)
- 3. Aktualisieren eines ViewControllers mit der UITabBar-Anwendung
- 4. Laden eines ViewControllers in eine Containeransicht
- 5. iPhone 3.1 SDK: UIViewController Kategorie betrifft alle ViewControllers
- 6. Größe der ViewControllers Ansicht, die Teil eines UINavigationController auf IPhone sind
- 7. Overlay-Ansicht über Registerkarte viewcontrollers
- 8. Verzögerung zwischen dem Ablehnen von Viewcontroller und dem Präsentieren eines neuen Viewcontrollers entfernen
- 9. 10 UIActivityViewController: Farbton der präsentierten View-Controller
- 10. Wie UItabbarcontrollers viewcontrollers Array dynamisch ändern?
- 11. SWRevealviewcontroller verschachtelte ViewControllers
- 12. UIDocumentInteractionController Titel der präsentierten Ansicht ändern
- 13. (Swift) TableViewController in der Containeransicht eines ViewControllers anzeigen
- 14. In meiner Tabellenansicht innerhalb eines ViewControllers werden keine Informationen angezeigt.
- 15. Einstellen der Eigenschaften eines ViewControllers nach der Instanziierung
- 16. Wie können die Werte eines Viewcontrollers zurückgesetzt werden?
- 17. Anzahl der viewControllers nicht abrufen
- 18. ViewControllers mit TextViews in UIPageViewController
- 19. Mehrere Kind ViewControllers in Einzelcontaineransicht
- 20. ViewControllers überlappen einander in Main.Storyboard
- 21. Paging ViewControllers im Landscape-Modus
- 22. iPhone entfernen String von String
- 23. iPhone aurioTouch Beispiel: Entfernen DC
- 24. iPhone & Core Data - Entfernen von NSManagedObject?
- 25. Wie verbinde ich Button Action mit Tabbar Viewcontrollers
- 26. iPhone - Inhaltsgröße eines UITableViewController
- 27. iPhone: Wie Daten zu übergeben zwischen mehreren Viewcontrollers in einer Tabbar App
- 28. wie zu entfernen entfernen/n/t von string in iphone
- 29. Autorotation auf iOS 7 für einen einzelnen präsentierten ViewController deaktivieren
- 30. Entfernen eines Zombie-Prozesses
Können Sie Code schreiben, was Sie bisher versucht haben. Was benutzt du auch, um den View-Controller zu laden? Ist es UINavigationController? Haben Sie versucht, den View-Controller zu öffnen? –
sieht aus wie hakey Frage für mich ... bitte fügen Sie einige Code, den Sie bisher versucht haben ... –
Wenn ich disneyViewController oder popViewController verwende, wird mich keiner von beiden zum ursprünglichen View-Controller bringen? Ich suche nach einem Weg, wenn möglich, den initialen View-Controller zu verwerfen. – Carmichael