Я набросал рабочий процесс приложения, в котором у вас есть главное меню «Уровень 0», которое вызывает модальное представление «Уровень 1», которое вызывает другое модальное представление «Уровень 2».
Я могу заставить это работать, нет проблем И я могу удалить весь стек, используя:
[[[self parentViewController] parentViewController] dismissModalViewControllerAnimated:YES];
в модальном представлении «Уровень 2».
Моя проблема в том, что в модальном представлении «Уровень 2» есть панель навигации. Я не могу удалить весь стек. Код, который я перечислил выше, возвращает меня только на один уровень, поэтому он действительно работает так же, как если бы я сделал это:
[self dismissModalViewControllerAnimated:YES];
в модальном представлении «Уровень 2».
Резюме:
Когда модальное представление «Уровень 1» вызывает модальное представление «Уровень 2», используя следующее:
Level2 *level2 = [[[Level2 alloc] initWithNibName:@"Level2" bundle:nil] autorelease];
[self presentModalViewController:portalMainController animated:YES];
Я могу закрыть весь стек и вернуться в главное меню (уровень 0). НО, когда «Уровень 1» вызывает «Уровень 2» с панелью навигации, подобной следующей:
Level2 *level2 = [[[Level2 alloc] initWithNibName:@"Level2" bundle:nil] autorelease];
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:level2];
[self presentModalViewController:navigationController animated:YES];
[navigationController release];
Я не могу вернуться на «Уровень 0», я только возвращаюсь на «Уровень 1».
Есть предложения?