我正在通过代码构建我的视图层次结构,并且想知道在从我的控制器请求视图时,在loadView中创建整个层次结构是否更好,然后在viewWillAppear方法中将视图设置为屏幕动画,或者如果最好保持简单,但可能需要通过在viewWillAppear中构建整个层次结构来释放和分配内存。
我的理解是控制器调用loadView在第一次需要时创建视图,然后尽可能长时间保持它,这样你就可以离开并返回到这个控制器并在视图中制作动画,但不需要通过viewWillAppear重新创建并附加它们。
基本上,我发现在loadView中分别分配视图然后在viewWillAppear中转换(有时更新其中的内容)并且想知道保留视图的好处是否超过简单性只需重新创建它们(并因此重新初始化它们并避免任何未重置值)。
答案 0 :(得分:2)
loadView
在创建时只调用一次,并且应该使用contation来创建视图。
viewWillAppear:(BOOL)animated
。如果您的视图已保留,则可以在此更新/设置数据。 (您的UIButtons,UILabels,...已经由loadView分配,您只需在此处设置内容。)