【发布时间】:2010-07-11 20:27:11
【问题描述】:
我正在勾画一个应用程序的工作流程,其中您有一个主菜单“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级”。
有什么建议吗?
【问题讨论】:
标签: iphone uinavigationcontroller presentmodalviewcontroller