首页 文章

viewWillAppear与loadView的构建视图层次结构

提问于
浏览
3

我正在通过代码构建我的视图层次结构,并想知道在我的控制器请求视图时,在loadView中创建整个层次结构是否更好,然后在viewWillAppear方法中将视图设置为屏幕动画,或者如果它是更好地保持简单,但可能需要通过在viewWillAppear中构建整个层次结构来更多地释放和分配内存 .

我的理解是控制器调用loadView在第一次需要时创建视图,然后尽可能长时间保持它,以便您可以离开并返回到此控制器并在视图中设置动画,但不需要重新创建和通过viewWillAppear附加它们 .

基本上,我发现在loadView中单独分配视图然后在viewWillAppear中转换(有时更新其中的内容),并且想知道保留视图的好处是否超过简单地重新创建它们的简单性,我觉得很麻烦(并因此重新初始化它们并避免任何未重置值) .

1 回答

  • 2

    loadView 在创建时只调用一次,并且应该用于创建视图 .

    每次显示视图时都会调用 viewWillAppear:(BOOL)animated . 如果您的视图已保留,则可以在此更新/设置数据 . (您的UIButtons,UILabels,...已经由loadView分配,您只需在此处设置内容 . )

相关问题