程序一经启动,AppDelegate的实例就会创建一个充满屏幕的window,它是App唯一的,一个App对应一个window。window是UIWindow类型的,继承于UIView,是种特殊的UIView。
而在iOS开发中我们每当要新建一个界面时,就新建一个UIViewController,它会自动建一个view。
UIViewController的生命周期:
1.alloc 首先通过alloc分配内存空间,实例化一个UIViewController对象;
2.init(initWithNibName) 然后执行构造函数init。初始化对象,初始化数据,做准备工作;(若是通过xib文件创建的视图,则执行initWithNibName方法)
3.loadView 紧接着viewController对象判断自己是否有个view。若无,则循环执行loadView方法,直到viewController有了view;
4.viewDidLoad 视图已经加载完成。在这里可以创建其他控件,进行UI布局了;
5.viewWillAppear 视图将要显示在屏幕前;
6.viewDidAppear 视图已在屏幕上渲染完成;
7.viewWillDisappear 视图将要从屏幕上消失;
8.viewDidDisappear 视图已从屏幕上消失;
9.dealloc 销毁viewController对象,并在dealloc中释放资源(销毁在该类里创建的各种控件)。