Na kontrolerze widoku mam przycisk, który przedstawia inny kontroler widoku. Z drugiego kontrolera widoku mogę przejść do innych kontrolerów widoku, ale niekoniecznie do tego, który mnie tu dostarczył. Jeśli tak, jak mogę usunąć oryginalny kontroler widoku?iPhone - Usuwanie przedstawionego kontrolera widoku
9
A
Odpowiedz
25
Twój opis jest nieco niejasne tutaj. Nie może być 3 różne przypadki tutaj:
- przechodzenie przez kontrolera nawigacji hierarchii
- wyrwanie się z kontrolerem nawigacyjnym hierarchii do innego kontrolera widoku
- tylko dodanie innego kontrolera widoku, aby prąd w kontroler nawigacji stosu
W pierwszym przypadku można użyć metod UINavigationController:
- (UIViewController *)popViewControllerAnimated:(BOOL)animated
- (NSArray *)popToViewController:(UIViewController *)viewController animated:(BOOL)animated
- (NSArray *)popToRootViewControllerAnimated:(BOOL)animated
i użyj właściwości viewControllers, aby poruszać się po stosie.
Ina drugi, jeśli chcesz, aby wyrwać się hierarchię do jednego zupełnie innego kontrolera widoku, a następnie po prostu zrobić to:
[[[UIApplication sharedApplication] keyWindow].rootViewController dismissViewControllerAnimated:YES completion:nil];
[[UIApplication sharedApplication] keyWindow].rootViewController = newController;
lub nawet lepiej: dodać drugi wiersz w bloku zakończenia pierwszej linii.
A w trzecim przypadku, jeśli chcesz tylko zrobić jeden wyjątek, ale poza tym pobyt w kontroler nawigacyjny stosie, a następnie za pomocą metod:
- (void)addChildViewController:(UIViewController *)childController
- (void)removeFromParentViewController
17
To zależy od tego, jak faktycznie przedstawiłeś bieżący kontroler widoku. Jeśli było modally, następnie
[self.presentingViewController dismissViewControllerAnimated:YES completion:nil];
Jeśli został wciśnięty przy użyciu kontrolera nawigacji:
[self.navigationController popViewControllerAnimated:YES];
Powiązane problemy
- 1. Usuwanie kontrolera widoku z pamięci podczas tworzenia nowego kontrolera widoku
- 2. Aplikacja na iPhone - odwołanie modalnego kontrolera widoku nie dealloc to
- 3. Dodaj kontrolkę widoku kontrolera podrzędnego do podglądu kontrolera nadrzędnego widoku
- 4. iPhone Dev: Przeładuj dane widoku tabeli z kontrolera podrzędnego i innego kontrolera w TabBar
- 5. Renderowanie widoku innego kontrolera
- 6. iphone - programowo przycisk powrotu kontrolera nawigacji
- 7. Usuwanie tła widoku tekstowego
- 8. Usuwanie widoku z działania
- 9. Ładowanie kontrolera widoku wewnątrz widoku w Xcode
- 10. Jak uzyskać dostęp do widoku kontrolera nadrzędnego widoku z kontrolera widoku podrzędnego?
- 11. UIDocumentMenuViewController odrzuca prezentowanie kontrolera widoku
- 12. Przedstawienie kontrolera widoku w tvOS
- 13. Dostęp do kontrolera widoku kontenera
- 14. Uruchomienie kontrolera MVC bez widoku?
- 15. Sterownik widoku push w widoku kontrolera widoku modalnego
- 16. Dostosowywanie widoku przekroju tableView - iPhone
- 17. Dodawanie niestandardowego widoku powyżej kontrolera paska kart/kontrolera nawigacyjnego?
- 18. Przekierowanie ASP.Net MVC z częściowego widoku z kontrolera do pełnego widoku z innego kontrolera
- 19. Jak dodać widok kontrolera widoku podrzędnego do nadrzędnego widoku
- 20. odrzuć kontroler bieżącego widoku PO zaprezentowaniu nowego kontrolera widoku - swift
- 21. Jak dodać więcej kart w aplikacji storyboard kontrolera widoku karty?
- 22. MVC Przejdź do innego widoku kontrolera
- 23. popToRootViewControllerAnimated nie wyświetla kontrolera widoku root
- 24. Wywołanie metody kontrolera widoku z delegata aplikacji
- 25. Zend Framework renderowanie widoku innego kontrolera
- 26. Zapobieganie autorotate dla jednego kontrolera widoku?
- 27. Wywołanie akcji kontrolera z widoku w Ember
- 28. ASP MVC href do kontrolera/widoku
- 29. Pop do widoku głównego kontrolera z modalnego
- 30. CakePHP: jak używać kontrolera :: Referer() w widoku
można co do tego, co zostało próbowałem dotąd pisać kod. Co również używasz do załadowania kontrolera widoku. Czy to jest UINavigationController? Czy próbowałeś otworzyć kontroler widoku? –
wygląda dla mnie jak owcze pytanie ... proszę wkleić jakiś kod, który próbowałeś do tej pory ... –
Jeśli użyję metody dismissViewController lub popViewController, czy żaden z nich nie przeniesie mnie do oryginalnego kontrolera widoku? Szukam sposobu, jeśli to możliwe, aby odrzucić początkowy kontroler widoku. – Carmichael