gpt4 book ai didi

ios - 如何呈现 View Controller 并忽略所有其他 Controller ?

转载 作者:行者123 更新时间:2023-11-29 04:09:53 24 4
gpt4 key购买 nike

我有大约 20 个 View Controller ,与 Modal 和 Push Segue 链接在一起。现在,在最后一个 View Controller 处,我想再次切换回第一个 View Controller ,就好像用户重新启动了应用程序一样。不幸的是,当我这样做时

[UIViewController *viewController = [self.storyboard instantiateViewControllerWithIdentifier:@"InitViewController"]];
[self presentViewController:viewController animated:YES completion:nil];

所有之前的 View Controller 都没有被卸载。没有调用任何一个 viewDidUnload 方法。如何做到这一点?

最佳答案

instantiateViewController 方法创建 View Controller 的副本。您现有的 View Controller 不会被卸载,因为 iOS 不知道您想要“返回”,可以这么说。它无法卸载任何现有的 View Controller ,因为它们仍在导航层次结构中。您真正想做的是以某种方式“倒回” Storyboard。

幸运的是,从 iOS 6 开始,有一种改进的方法可以通过展开来实现这一点。这可以让您在 Storyboard中“回溯”回到开头,这听起来像是您想要做的。 WWDC 视频有一些示例和演练,您可能还想看看这个现有的 SO 问题:

What are Unwind segues for and how do you use them?

关于ios - 如何呈现 View Controller 并忽略所有其他 Controller ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14581538/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com