一:loadView
用于加载VC上的主View,可以将主View做成一个单View,在loadView中初始化,布局
二:viewDidLoad
于界面上的初始化操作
三:viewDidUnload
View的父视图消失就一起消失
iOS设备的内存是极其有限的,如果应用程序占用的内存过多的话,系统就会对应用程序发出内存警告。UIViewController就会收到didReceiveMemoryWarning消息。 didReceiveMemoryWarning方法的默认实现是:如果当前UIViewController的view不在应用程序的视图层次结构(View Hierarchy)中,即view的superview为nil的时候,就会将view释放,并且调用viewDidUnload方法
四:dealloc
也是用来释放资源的,但是只有在VC被释放的时候才会调用
技术总结点:
1.第一次访问UIViewController的view时,view为nil,然后就会调用loadView方法创建view
2.view创建完毕后会调用viewDidLoad方法进行界面元素的初始化
3.当内存警告时,系统可能会释放UIViewController的view,将view赋值为nil,并且调用viewDidUnload方法
4.当再次访问UIViewController的view时,view已经在3中被赋值为nil,所以又会调用loadView方法重新创建view
5.view被重新创建完毕后,还是会调用viewDidLoad方法进行界面元素的初始化,就是这么一个循环关系
6.dealloc只有在VC被释放的时候调用,如果VC中存在对象未被释放,将不走这个方法。