视图控制器为Iphone的应用程序提供了基础的视图管理模型,可以使用视图控制器管理视图的继承树,如果使用了视图控制器,你就可以方便的管理视图中的子视图,假如没有了这个控制器,可想而知每个视图岂不是都要用继承才能管理彼此的关系。UIViewController的基础功能是管理界面中的view,但是一个复杂的应用程序肯定有好多的视图控制器,那么自然如果视图控制要有管理自己的功能就更加强大。视图控制器很少单独使用。假如你的应用程序要使用导航或者转换条控制器,或许是你的应用程序要呈现模态的视图,明显的这里有很多的视图控制器相互关联来实现导航的功能.所以可以看出,UINavigationController和UITabBarController是用来控制视图控制器的使用的,同样他们的跟视图也是UIViewController,这里就说明了UIViewController是自己可以控制自己的。
loadView
如果手动创建一个视图控制器,必须重载loadView方法,去使用他创建视图。如果使用Interface builder创建和初始化的视图控制器,就不必重载此方法.所以当手动创建一个视图控制器的时候一定要注意重载loadView,否则视图将不回显示增加的任何字视图。
UIViewController的生命周期
ViewController生命周期会经历初始化、加载视图、销毁视图、生命结束等过程。
1)init方法
初始化ViewController本身。
2)loadView方法
当view需要被展示而它却是nil时,viewController会调用该方法,如果代码构建View的话需要重写此方法。
3)viewDidLoad方法
执行完loadView后继续执行viewDidLoad,loadView时还没有view,而viewDidLoad时view已经创建好了。
4)viewDidUnload方法
当系统内存吃紧的时候会调用该方法。
5)dealloc
释放其他资源或内存。
网友评论