小心:这个问题与最近的弃用viewDidUnload。我见过“很棒”且合乎逻辑的答案围绕这个主题,但显然事实证明他们错了。请谨慎行事,正如您所看到的,这个主题非常令人困惑。
来自苹果的文档:
然而系统会自动释放这些昂贵的资源
当视图未附加到窗口时。剩余内存
大多数视图使用的数据都足够小,因此不值得
系统自动清除并重新创建视图层次结构。
所以...我可以安全地假设在 iOS 6 中,只要我不显式地将 viewController 的视图设置为 nil(手动卸载它),viewDidLoad
在应用程序的整个生命周期中,任何分配的 viewController 实例只会被调用一次?
从 iOS 6 开始,您的UIViewController
子类只会收到viewDidLoad
一次,除非你编写代码来设置它view
回到nil
.
但是,我不会依赖复杂系统提供的视图控制器中的这种行为,例如UIImagePickerController
。也许它自己设定view
回到零。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)