ios - 关闭 UIViewController 还是只初始化最顶层?

标签 ios uiviewcontroller

我创建了一个 iPad 应用程序,其中有三个自定义 UIViewController。 VC1、VC2、VC3。 它就像一个层次结构,因此您必须一个接一个地经历每个阶段。

因此你不能直接从 VC1 跳转到 VC3。

但如果您处于 VC3,则可以直接返回 VC2 或 VC1。 在 VC3 上,我只需调用 dismissViewControllerAnimated 即可呈现 VC2 - 很酷。

但是如果我想从 VC3 跳回 VC1 最好的方法是什么? 是否有理由只对 VC1 使用“alloc and init”然后 presentViewController:animated:completion 会很糟糕?

最佳答案

是的,这会很糟糕,因为 VC1 已经存在,你会有一个副本。 您可以使用它从 VC3 转到 VC1。

[self.presentingViewController.presentedViewController dismissModalViewControllerAnimated:YES];

关于ios - 关闭 UIViewController 还是只初始化最顶层?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9311974/

相关文章:

ios - swift ios 9 应用程序不在设置中

iphone - 如何比较两个 MutableArrays 并在 iphone 中显示不匹配的值?

ios - iPhone 视网膜 4 英寸模拟器, Storyboard设置为 3.5 英寸

ios - 导航到选项卡栏 Controller 的正确方法

ios - 查看 Controller : how to correctly initialize values that depend on NIB

ios - dismissViewControllerAnimated :completion: on iOS 8

iphone - 将iOS Aviary集成到iOS

ios - 将字符串日期转换为 NSDate 的问题

ios - 按比例调整 UIImage 的大小然后裁剪

iPhone应用程序: Overall Application Hierarchy & Architecture