ios学习笔记之UIViewControl生命周期
提到UIViewcontrol,每个人都不会陌生吧!平时实际开发中,每天的实际开发应该都少不了它。学过android的各位亲,也对生命周期这四个字并不陌生,无论是activity,还是service,也都皆已熟识了吧。也是由于之前学android的经验,看到后第一感觉就是,其生命周期是怎样的呢?好吧,说了这么多,开始进入UIViewControl的身体吧。
打开官方网站,找了下,并没看到其生命周期的论述,反而有的是关于各种ViewControl的介绍。但从其类的方法中,我们可以看出一些端臆,但究竟是不是,还是写下代码测试下为好。具体代码就不列出,记录下其生命周期吧。

如上图,整个过程大概如上,具体方法如下:
initWithNibName
这是controller的初始化方法,当你使用nib文件进行初始化时,将自动直接执行,也可自定义nib文件初始化。而当你并未使用nib文件,nibname将是nil,但仍通过loadView可以返回一个空的UIView,并且你可以用代码自定义自己的view.
loadView
为controller创建view,但你需要代码自定义view时,自定义UI将写在这个方法内。需要注意一点的是,此方法不可使用super中的view,父方法可以在nil的view的情况下返回一个空的view
viewDidLoad
可以做一些loadView后的操作,当然,这个方法和上面loadView方法在这个viewController没有消亡前,皆只执行一次。类似于android的onCreate吧
viewWillAppear和viewDidAppear
这两个放一起,是因为这两个每当view要出现时都会执行,在还没看到view时执行viewWillAppear,而当view添加到视图中后,将执行此方法表示控制的view已加载。
viewWillDisappear和viewDidDisappear
这两个是当view将消失时执行的,将要消失时调用viewWillDisappear,消失后立即调用viewDidDisappear
viewWillUnload和viewDidUnload
这两个和上面的loadView和viewDidload对应,当收到内存警告时,在viewWillUnload中,我们可以对一些改view中的一些必要信息进行保存,已保证在view看不到的情况下,view被释放了。而viewDidUnload方法中我们则可以释放掉那些强引用。
ios学习笔记之UIViewControl生命周期的更多相关文章
- IOS学习笔记37——ViewController生命周期详解
在我之前的学习笔记中讨论过ViewController,过了这么久,对它也有了新的认识和体会,ViewController是我们在开发过程中碰到最多的朋友,今天就来好好认识一下它.ViewContro ...
- MAVEN学习笔记之Maven生命周期和插件简介(3)
MAVEN学习笔记之Maven生命周期和插件简介(3) clean compile site三套生命周期相互独立. clean pre-clean 执行清理前的工作 clean 清理上一次构建生成的所 ...
- Maven学习笔记(六):生命周期与插件
何为生命周期: Maven的生命周期就是为了对全部的构建过程进行抽象和统一.Maven从大量项目和构建工具中学习和反思,然后总结了一套高度完好的.易扩展的生命周期.这个生命周期包括了项目的清 ...
- Spring4学习笔记 - Bean的生命周期
1 Spring IOC 容器对 Bean 的生命周期进行管理的过程: 1)通过构造器或工厂方法创建 Bean 实例 2)为 Bean 的属性设置值和对其他 Bean 的引用 3)调用 Bean 的初 ...
- Android之Fragment学习笔记②(Fragment生命周期)
一. Fragment生命周期图 二.Fragment生命周期方法介绍 Fragment的生命周期和activity生命周期很像,其生 ...
- android学习笔记28——Activity生命周期
Activity生命周期 Activity的活动状态由android已Activity栈的形式管理,当前活动的Activity位于栈顶.随着不同应用的运行,每个Activity都有可能从活动状态转入非 ...
- Android学习笔记:Activity生命周期详解
进行android的开发,必须深入了解Activity的生命周期.而对这个讲述最权威.最好的莫过于google的开发文档了. 本文的讲述主要是对 http://developer.android.co ...
- Spring 学习笔记---Bean的生命周期
生命周期图解 由于Bean的生命周期经历的阶段比较多,我们将通过一个图形化的方式进行描述.下图描述了BeanFactory中Bean生命周期的完整过程: Bean 的生命周期从Spring容器着手实例 ...
- RxSwift学习笔记3:生命周期/订阅
有了 Observable,我们还要使用 subscribe() 方法来订阅它,接收它发出的 Event. let observal = Observable.of("a",&qu ...
随机推荐
- T4模版引擎之生成数据库实体类
在通过T4模版引擎之基础入门 对T4有了初步印象后,我们开始实战篇.T4模板引擎可以当做一个代码生成器,代码生成器的职责当然是用来生成代码(这不是废话吗).而这其中我们使用的最普遍的是根据数据库生成实 ...
- hdu2191 悼念512汶川大地震遇难同胞——珍惜如今,感恩生活
转载请注明出处:http://blog.csdn.net/u012860063 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2191 Problem ...
- 利用EntityFramework获得双色球数据库
原文 利用EntityFramework获得双色球数据库 双色球想必大家都很熟悉了,尽管屡买屡不中,但还是会买.以前就想过利用双色球的走势图得到双色球的数据库,至于得到数据库干什么倒没想过,不过对以往 ...
- Windows 注册和取消注册一个dll或者ocx
原文:Windows 注册和取消注册一个dll或者ocx 一.DLL是什么 DLL,是Dynamic Link Library 的缩写形式,中文名称为动态链接库. DLL是 ...
- hdu1047 Integer Inquiry 多次大数相加
转载请注明出处:http://blog.csdn.net/u012860063 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1047 Problem ...
- [WPF]程序全屏
原文:[WPF]程序全屏 代码: 使用:
- 我的MYSQL学习心得(十)
原文:我的MYSQL学习心得(十) 我的MYSQL学习心得(十) 我的MYSQL学习心得(一) 我的MYSQL学习心得(二) 我的MYSQL学习心得(三) 我的MYSQL学习心得(四) 我的MYSQL ...
- ActivityLifeCycle官方demo分解
1.左右Activity生命周期的若干条款: p=330">http://1.duoinfo.sinaapp.com/? p=330 http://1.duoinfo.sinaapp. ...
- [ACM] hdu 1671 Phone List (特里)
Phone List Problem Description Given a list of phone numbers, determine if it is consistent in the s ...
- qq音乐的歌词接口中例如:,.的特殊符号编码使用js进行转义
从qq音乐的歌词接口中得到这样的代码 jsonp11({"retcode":"0","code":"0","s ...