视图的运行顺序及生命周期
2016-01-11 01:47
204 查看
视图的生命周期即运行顺序
当一个视图控制器被创建,并在屏幕上显示的时候。 代码的执行顺序
1、 alloc 创建对象,分配空间
2、init (initWithNibName) 初始化对象,初始化数据
3、loadView 从nib载入视图 ,通常这一步不需要去干涉。除非你没有使用xib文件创建视图
4、viewDidLoad 载入完成,可以进行自定义数据以及动态创建其他控件
5、viewWillAppear 视图将出现在屏幕之前,马上这个视图就会被展现在屏幕上了
6、viewDidAppear 视图已在屏幕上渲染完成
当一个视图被移除屏幕并且销毁的时候的执行顺序,这个顺序差不多和上面的相反
1、viewWillDisappear 视图将被从屏幕上移除之前执行
2、viewDidDisappear 视图已经被从屏幕上移除,用户看不到这个视图了
3、dealloc 视图被销毁,此处需要对你在init和viewDidLoad中创建的对象进行释放
好了,下面给大家上一个图帮助理解师徒的生命周期
当一个视图控制器被创建,并在屏幕上显示的时候。 代码的执行顺序
1、 alloc 创建对象,分配空间
2、init (initWithNibName) 初始化对象,初始化数据
3、loadView 从nib载入视图 ,通常这一步不需要去干涉。除非你没有使用xib文件创建视图
4、viewDidLoad 载入完成,可以进行自定义数据以及动态创建其他控件
5、viewWillAppear 视图将出现在屏幕之前,马上这个视图就会被展现在屏幕上了
6、viewDidAppear 视图已在屏幕上渲染完成
当一个视图被移除屏幕并且销毁的时候的执行顺序,这个顺序差不多和上面的相反
1、viewWillDisappear 视图将被从屏幕上移除之前执行
2、viewDidDisappear 视图已经被从屏幕上移除,用户看不到这个视图了
3、dealloc 视图被销毁,此处需要对你在init和viewDidLoad中创建的对象进行释放
好了,下面给大家上一个图帮助理解师徒的生命周期
相关文章推荐
- 如何正确地写好一个界面
- 人生就像是一段程序
- C++11多线程简单示例
- (一〇九)单独编译(多个源代码文件和头文件)
- ImageView中Bitmap的回收
- LeetCode Word Search II
- 文章标题
- 多线程临界区
- pxe 简介以及 cobbler安装配置自动化
- leetcode笔记:Pascal's Triangle
- 自定义注解以及反射得到当前的调用方法
- 软件工程总结(添加自己提出的问题)
- 多线程原子操作的简单示例
- find查找后 xargs 复制文件
- const 和 #define区别
- AndroidSupport兼容包无法关联源码的解决办法
- [看书日记20160111]没心情啊。。Messenger,AIDL
- [leetcode] 138. Copy List with Random Pointer 解题报告
- openstack 入门1
- easyui扩展-日期范围选择.