参考博客
作者:林大鹏天地
链接:http://www.cocoachina.com/ios/20180509/23326.html
1、initWithNibName:bundle:

2、initWithCoder:

3、awakeFromNib

4、loadView
注意:在重写loadView方法的时候,不要调用父亲的方法
loadView.png
5、viewDidLoad

6、viewWillAppear:

7、viewWillLayoutSubviews

8、viewDidLayoutSubViews

9、viewDidAppear:

10、viewWillDisAppear:

11、viewDidDisappear:

12、dealloc

13、总结
(1)、只有init系列的方法,如initWithNibName需要自己调用,其他方法如loadView、awakeFromNib则是系统自动调用。而viewWill/Did系列的方法则类似于调和通知,也会被自动调用。
(2)、纯代码写视图布局需要注意,需手动调用loadView方法,而且不需要调用你类的loadView方法。纯代码和用IB的区别仅存在于loadView方法及其之前,编程时需要注意的也就是loadView方法。
(3)、除了initWithNibName和awakeFromNib方法是处理视图控制器外,其他方法都是处理视图。这两个方法在视图控制器的生命周期里只会调用一次。
网友评论