5

Pracuję nad aplikacją iPhone opartą na zestawie scenariuszy. Z powodzeniem używam opcji odwijania suwaków, aby nawigować po stosie kontrolerów widoku.Rozwiń moduły nie działające z kontrolkami widoku modalnego.

Jednak, gdy przedstawię modalny kontroler widoku, nie mogę wydawać się być w stanie wyzwolić segregację rozwijaną, którą podałem w pliku scenorysu.

Czy to normalne czy błąd?

+0

Prawdopodobnie jest to normalne zachowanie. Jeśli to możliwe, przygotuj więcej szczegółów i zrzut ekranu storyboardu. – Desdenova

+0

dla widoków modalnych użyj polecenia dismissviewcontrolleranimated –

+1

Nie mam problemu z użyciem "dismissviewcontrolleranimated". Jednak próbuję ustalić, dlaczego funkcja odwijania nie działa w tym przypadku. Nie mogę znaleźć niczego istotnego w dokumentacji Apple. –

Odpowiedz

0

Problem rozwiązany.

Najwyraźniej popełniłem błąd w edytorze storyboardów. To, co zrobiłem, to usunąć docelowy (modalny) kontroler widoku, a następnie odtworzyć go.

Działa dobrze, teraz. Zgłoszono zgłoszenie błędu.

+0

tak też mi się to czasem zdarza ... może być błędem ... –

0

Tak więc mam ten sam problem (ponad dwa lata później!). Nie naprawiłem tego problemu, ale odkryłem, że widok modalny prezentowany z domyślnym stylem prezentacji rozwinie OK, ale taki, który używa stylu prezentacji arkusza po prostu nie działa. Metoda unwindToViewX zostanie wywołany na widok kontrolera nadrzędnego, że odpoczynek segue porusza się, choć, więc mam obejść ten problem za pomocą następującego kodu:

if (self.presentedViewController) { 
    [self dismissViewControllerAnimated:YES completion:NULL]; 
} 

to ratuje mnie od konfiguracji systemu jako delegata rozwijanie akcji wykonuje wszystkie ciężkie ruchy, ale także unika problemu, w którym być może działanie odprężania może zadziałać pewnego dnia, ponieważ w takim przypadku self.presentedViewController powinien zwrócić NO, ponieważ akcja rozwijania działała poprawnie i nie będziemy w końcu odrzucać dwóch kontrolerów widoku przez wypadek.

Mam nadzieję, że pomoże to innym osobom w tej samej łodzi, ale chciałbym również usłyszeć, czy ktoś inny ma lepsze rozwiązania.