Не могу выдвинуть представление из модального представления в iOS5 - PullRequest
2 голосов
/ 13 октября 2011

У меня есть приложение на основе контроллера навигации.Из моего Root VC у меня есть одно представление, которое я представляю модально следующим образом:

[self.navigationController presentModalViewController:shortcutsViewController animated:YES];

shortcutsVC содержит ряд кнопок, которые переносят пользователя в различные места в приложении.

ВiOS 4.3, это работает:

UINavigationController *saveNavigationController = (UINavigationController *)self.parentViewController;
[saveNavigationController pushViewController:multipleListViewController animated:YES];
[saveNavigationController dismissModalViewControllerAnimated:YES];
[multipleListViewController release];

Не работает, если увольнение происходит до нажатия.

В iOS 5 это не работает вообще, независимо от того, в каком порядкедве команды.

Под "не работает" я имею в виду, что кнопка кратковременно подсвечивается, но новый VC не отображается.

Как правильно это сделать?Или я делаю что-то, что было незаконным с самого начала и просто работало в 4.3?

РЕДАКТИРОВАТЬ:

Я получил некоторую автономную помощь по этому вопросу.

Проблема в том,что в iOS5 parentViewController был переименован в представляющий ViewController.Поскольку мне все еще нужно поддерживать и 4.x, и 5.x, я изменил это

UINavigationController *saveNavigationController = (UINavigationController *)self.parentViewController;

на это

UINavigationController *saveNavigationController;
if ([self respondsToSelector:@selector(presentingViewController)]) {
    saveNavigationController = (UINavigationController *)self.presentingViewController;
} else {
    saveNavigationController = (UINavigationController *)self.parentViewController;
}

И все теперь счастливы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...