rejectModalViewControllerAnimated работает только с анимацией по умолчанию

У меня странная проблема... в приложении с вкладками, в tabBarController я вызываю:

[myController setModalTransitionStyle:UIModalTransitionStyleFlipHorizontal];
self presentModalViewController:myController animated:YES];

myController представлен, и все работает, но когда я пытаюсь отклонить его (изнутри myController) с помощью:

[[self presentingViewController] dismissModalViewControllerAnimated:YES];

Он выполняет анимацию отклонения, я почти вижу активное представление tabBarController, когда вдруг снова появляется myController. Единственный способ заставить его работать — использовать стиль перехода по умолчанию:

UIModalTransitionStyleFlipHorizontal

Любая другая анимация или даже попытка закрыть myController без анимации вызывают эту проблему.

После вызова отклонения вызываются функции viewWillDisappear и viewDidDisappear myController. viewWillAppear и viewDidAppear из myController НЕ вызываются при повторном появлении. Повторный вызов функции отклонения ничего не делает. Я почти уверен, что ничто снова не представляет myController, как будто он просто не исчезает полностью.

Я попытался заменить myController на новый новый контроллер с пустым представлением, ничего не изменилось.

Это звучит как глупая проблема, но я действительно не могу ее понять... PS: я использую iOS5, раскадровку, ARC, это приложение для iphone, я использую симулятор (не могу попробовать на iphone в момент)


person flagg19    schedule 07.04.2012    source источник


Ответы (1)


Это отклонение вызывается из модально представленного VC? Попробуй это:

[self dismissModalViewControllerAnimated:YES];
person danh    schedule 07.04.2012
comment
да, я также пробовал [самоотклонениеModalViewControllerAnimated:YES]; но проблема остается. - person flagg19; 08.04.2012