频道栏目
首页 > 资讯 > IOS > 正文

iOS 视图控制器ViewController生命周期

16-09-08        来源:[db:作者]  
收藏   我要投稿

当我们说一个界面的时候往往都会谈到生命周期,所谓生命周期,通俗地说是指对象的生老病死,对于ViewController来说,则是指一个界面从初始化到注销的过程。

我们知道ViewController在iOS开发中成为视图控制器,一般来说控制一个界面,有的是对于一个特定类型的界面,如UITableViewController,有时候是指一个界面框架,如UINavigationViewController,更多时候,是指我们自定义的界面。

创建一个界面对象是,一般是两种方法,一种是用storyboard(或者是以前的Nib文件),另一种是用代码来自行定义界面元素。

对于一个界面来说,其生命周期过程通常可分为下面几个步骤:

alloc initWithNibName loadView viewDidLoad viewWillAppear viewDidAppear viewWillDisappear viewDidDisappear dealloc

其各自代表的过程从其命名就大致可以看出来,从初始化,到加载,到显示,到不显示,到注销。大致是这么一个过程。

我们添加界面元素时一般是在viewDidLoad方法中,而在Appear方法中一般会进行一些界面初始调用的内容,在Disappear中往往就是一些在注销界面前要做的一些处理了,如保存数据等。

需要注意的是iOS对一个界面生命历程的处理:

当启动一个程序是,会调用界面的viewDidLoad、viewWillAppear、viewDidAppear方法; 当点击Home键回到桌面时,注意并不会调用Disppear的相关方法; 当双击Home键删除应用时,才会调用viewWillDisappear、viewDidDisappear方法。

iOS 4以后,引入了后台概念,view会被挂起,但并不会调用Appear和Disappear相关方法。

此外,只有用代码自定义界面,而不是用nib文件或者storyboard初始化界面时,才会调用loadView方法,loadView方法只会调用一次,而viewDidLoad方法可能会调用多次。

其实对于生命周期的理解更多的是帮助在开发过程中在更合适的地方进行一些工作,希望能帮到大家~

相关TAG标签
上一篇:Android自定义带标题边框的Layout
下一篇:Win10系统如何移除锁屏界面网络图标?
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站