UIViewController生命周期
来源:互联网 发布:pc打电话软件 编辑:程序博客网 时间:2024/06/04 20:00
在UIViewController中,controller的view存在两个循环:加载和卸载循环,可参考下图:
加载循环
- 程序请求controller的view
- 如果view在内存中,则直接加载。相反,如果不存在,则UIViewController调用loadView方法
- loadView方法执行如下操作:
- 如果你重载了这个方法,则必须创建必要的view并且将一个非nil值传给UIViewController的view属性。
- 如果你没有重载这个函数,UIViewController会默认使用UIViewController的nibName和nibBundle属性尝试从nib文件加载view。如果没有找到nib文件,它尝试寻找一个与UIViewController类名匹配的nib文件。
- 如果没有可用的nib文件,那么它创建一个空的UIView作为它的view。
- UIViewController调用viewDidLoad来执行一些加载时任务。
卸载循环
- 程序收到内存警告
- 每个UIViewController调用didReceiveMemoryWarning, 默认会安全地释放掉view
- 如果UIViewController释放掉了它的view,它会调用viewDidUnload。可以重载这个方法来进行额外的清理工作。
原文地址
http://blog.libingcun.com/blog/2011/12/28/uiviewcontroller%E7%94%9F%E5%91%BD%E5%91%A8%E6%9C%9F/
- UIViewController生命周期
- UIViewController生命周期
- UIViewController生命周期
- UIViewController生命周期
- UIViewController生命周期
- UIViewController生命周期
- UIViewController生命周期
- UIViewController生命周期
- UIViewController生命周期
- UIViewController生命周期
- UIViewController生命周期
- UiViewController生命周期
- UIViewController 生命周期
- UIViewController生命周期
- UIViewController生命周期
- UIViewController生命周期
- UIViewController生命周期
- UIViewController生命周期
- android4.0.1 webkit 主资源下载过程分析
- CentOS5源代码编译安装apache2.2.21
- CentOS5用Yum安装MySQL5.0
- C++保留字
- 重载
- UIViewController生命周期
- Ext2文件系统—文件读写
- Virtual
- 7个小习惯开始你精彩的一天
- 2013年的春节
- 用GDB或CDT調試qemu時, 它會不停fire SIGUSR1
- Java开发中的23种设计模式
- php header 之 Set-Cookie
- poj 3277 区间覆盖