Xcode 是否在iOS 5及更高版本中关闭多设备控制器?

Xcode 是否在iOS 5及更高版本中关闭多设备控制器?,xcode,uiviewcontroller,modalviewcontroller,Xcode,Uiviewcontroller,Modalviewcontroller,我有一个应用程序,它由一个具有三个视图的UITabBar组成,其中一个是UITableVIew。应用程序启动时加载的第一个视图是UIAbbar视图中的UIView。此视图是一个供用户填写的表单,它引导用户浏览五个不同的屏幕。之前,我一直将这些视图作为模式视图一个接一个地加载,最后,当用户点击最后一个按钮时,将它们全部忽略,如下所示: [self.parentViewController.parentViewController.parentViewController.parentViewCon

我有一个应用程序,它由一个具有三个视图的UITabBar组成,其中一个是UITableVIew。应用程序启动时加载的第一个视图是UIAbbar视图中的UIView。此视图是一个供用户填写的表单,它引导用户浏览五个不同的屏幕。之前,我一直将这些视图作为模式视图一个接一个地加载,最后,当用户点击最后一个按钮时,将它们全部忽略,如下所示:

[self.parentViewController.parentViewController.parentViewController.parentViewController      dismissModalViewControllerAnimated:YES];
但是自从
[self.parentViewController dismissModalViewControllerAnimated:YES]
不再工作,已被
[self dismissmviewcontrolleranimated:YES]替换我真的不确定如何实现视图控制器的这种多重撤销。我已尝试将调用添加到父视图控制器,但不起作用。我也试过:

[self.presentingViewController.presentingViewController.presentingViewController.presentingViewController.presentingViewController dismissViewControllerAnimated:YES completion:nil];
但这似乎也不起作用。任何建议都将不胜感激。我还在控制台中得到消息:应用程序窗口应该在应用程序启动结束时有一个根视图控制器。这就是问题的原因吗

请注意,这是我多年来第一次为iOS编程,最近我把大部分时间都花在Arduino上,并将电子技术与编码相结合,所以这是一个有点陡峭的进修课程


非常感谢您的帮助

如果将五个视图控制器推送到UINavigationController上,则可以使用一个命令将它们全部解除/弹出:

- (NSArray *) popToViewController: (UIViewController *) viewController 
                         animated: (BOOL) animated

[您似乎没有使用UINavigationController…但您的描述并不完全清楚。]

您是对的,我不是。我对问题进行了编辑,以澄清这一点。谢谢你指出。我想下一个明显的问题是我应该使用导航控制器吗?如果是这样的话,为什么我现在需要一个,而我以前没有/我对导航控制器进行了排序并修复了它。干杯