一、当程序访问了控制器的View属性时会先判断控制器的View是否存在,如果存在就直接返回已经存在的View;
二、如果不存在,就会先调用loadView方法,如果控制器的loadView方法实现了,就会按照loadView方法加载自定义的View;
如果控制器的loadView方法没有实现就会判断storyboard是否存在;
如果storyboard存在就会按照storyboard加载控制器的View;如果storyboard不存在,就会创建一个空视图返回。
控制器的生命周期开始时有无loadView就如此理解。
UIViewController完整的生命周期顺序如下
-initWithNibName:bundle:
-init
-loadView
-viewDidLoad
-viewWillAppear
-viewWillLayoutSubviews
-viewDidLayoutSubviews
-viewDidAppear
-viewWillDisappear
-viewDidDisappear
-viewWillUnload
-viewDidUnload