viewDidLoad在iOS 6中调用过一次?

Head's up:这个问题与最近弃用viewDidUnload 。 我已经看到围绕这个话题的“伟大”和合乎逻辑的答案 ,但显然他们被certificate是错误的 。 谨慎行事,如你所见,这个话题非常混乱。

从苹果公司的文件:

但是,当视图未附加到窗口时,系统会自动释放这些昂贵的资源。 大多数视图使用的剩余内存足够小,系统自动清除并重新创build视图层次结构是不值得的。

所以…我可以安全地假设在iOS 6中,只要我没有明确地设置viewController的视图为零(手动卸载它), viewDidLoad将只被调用一次任何分配的viewController实例在整个生命周期应用?

从iOS 6开始,您的UIViewController子类只能接收一次viewDidLoad ,除非您编写代码将其view重新设置为nil

但是,我不会依赖于像UIImagePickerController这样的复杂系统提供的视图控制器中的行为。 也许它把自己的view归结为零。