gpt4 book ai didi

ios - viewDidLoad 是否在 UITabBarController 中被多次调用?

转载 作者:可可西里 更新时间:2023-11-01 04:23:42 27 4
gpt4 key购买 nike

我在我的应用程序中使用 SWRevealViewController(以获取滑出侧面板)但是每当用户导航到另一个 viewController(如“设置”)并返回时,一切都会重置。我知道这是 Storyboard的正常行为,因为实例化了一个新的 VC 并且每次都会调用 viewDidLoad。我试图通过将 VC 存储在 AppDelegate 的数组中然后返回到原始 viewController 来解决这个问题,这阻止了在最初重新呈现原始 VC 时调用 viewDidLoad 但我仍然发现它在两者之间移动时随机调用veiwcontroller 的,重置我的所有属性等。在研究中,Apple 文档确实说不要假设 viewDidLoad 只会被调用一次。

在切换选项卡时,这种行为在 UITabBarController 中是否很明显,因为我正在考虑放弃 SWRevealViewController 并使用它来代替它,如果它不会那么令人头疼的话。

我应该以不同的方式处理这个问题吗?将“状态”存储在 NSUserDefaults 中并在 viewDidLoad 上恢复?

提前致谢。

最佳答案

viewDidLoad 仅在 UIViewController 首次加载到内存中时被调用一次。这是您想要实例化任何实例变量并构建在此 UIViewController 的整个生命周期内存在的任何 UIViews 的地方。

UITabBarController 中,当您切换选项卡时,UIViewControllerviewdidLoad 也会被调用一次。

关于ios - viewDidLoad 是否在 UITabBarController 中被多次调用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19292205/

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