【发布时间】:2011-06-22 03:39:07
【问题描述】:
我有几个视图,我以模态方式一个接一个地打开。 View1 调用 View2,View2 调用 View3。
我用这段代码来调用下一个视图:
View2 *myView = [[View2 alloc] initWithNibName:@"View2" bundle:[NSBundle mainBundle]];
[self presentModalViewController:myView animated:YES];
[myView release];
如果用户按下取消按钮,它会返回一个视图... 3 到 2 和 2 到 1
[self.parentViewController dismissModalViewControllerAnimated:YES];
我需要做的是,当用户在 View3 上时,如果他们没有选择取消但完成操作,那么我需要回到 View1 并释放 View2 和 View3。
我该怎么做?
编辑:主窗口有一个导航控制器和 6 个视图控制器。我这样称呼 View 1:
View1 *screen = [[View1 alloc] initWithNibName:@"View1" bundle:[NSBundle mainBundle]];
self.Search = screen;
[mainNavController presentModalViewController:screen animated:YES];
[screen release];
编辑 #2: 主窗口调用视图 1。主窗口在 XIB 中有一个 NavController 可以正常工作:
View1 *screen = [[View1 alloc] initWithNibName:@"View1" bundle:[NSBundle mainBundle]];
[mainNavController presentModalViewController:screen animated:YES];
[screen release];
然后在 View 1 的 XIB 中,我添加了一个 NavController 并将其绑定到 .h 中的 View1NavController
视图 1 然后调用视图 2:
View2 *myView = [[[View2 alloc] initWithNibName:@"View2" bundle:nil] autorelease];
UINavigationController * navController = [[[UINavigationController alloc] initWithRootViewController:myView] autorelease];
[View1NavController presentModalViewController:navController animated:YES];
当我执行这个时,没有错误,但它不显示 View2。
【问题讨论】:
标签: iphone modal-dialog modalviewcontroller