可以多次调用viewDidLoad吗?

时间:2011-10-14 22:12:44

标签: iphone objective-c ios

文档说“在视图控制器将其关联的视图加载到内存后调用此方法。”我的问题是:

1)如果我初始化一个视图控制器是调用viewDidLoad,或者实际上是否必须将视图添加为当前视图的超级视图以便调用它

2)如果我添加了视图控制器视图,并且调用了viewDidLoad,那么我删除视图控制器视图,然后再重新添加它,是否会再次调用viewDidLoad?

1 个答案:

答案 0 :(得分:8)

加载视图时会调用

viewDidLoad。访问vc.view属性时会发生这种情况。它通常在将视图添加到视图层次结构之前发生,但如果先前访问该属性,则可能更早发生。

如果从视图层次结构中删除视图,然后发生内存警告并调用viewDidUnload,则再次访问viewDidLoad属性时将再次调用view。但这是第二次被召唤的唯一途径;如果您的视图永远不会卸载,那么viewDidLoad永远不会重复。