在IOS常用模式MVC中,UIViewController通常指的是C(控制器)。由于M与V不能直接通信,C来负责M与C之间的交互问题。
注:此图摘自Stanford CS193P课程上PPT。
当一个视图控制器被创建并显示的时候,代码的执行顺序为:
1. alloc 创建对象,分配空间。
2. init (initWithNibName) 初始化对象,初始化数据。
3. loadView 从nib载入视图 ,通常与viewDidLoad配套使用。
4. viewDidLoad 载入完成,可以进行自定义数据以及动态创建其他控件。
viewDidLoad 此方法只有当view从nib文件初始化的时候才被调用。loadView 此方法在控制器的view为nil的时候被调用。
5. viewWillAppear 视图将出现在屏幕之前,马上这个视图就会被展现在屏幕上了。
6. viewDidAppear 视图已在屏幕上渲染完成。
7. viewWillDisappear 视图将被从屏幕上移除之前执行。
8. viewDidDisappear 视图已经被从屏幕上移除,用户看不到这个视图了。
9. dealloc 视图被销毁。