ios学习笔记之ios应用生命周期及Viewcontroller生命周期简记

ios学习笔记之ios应用生命周期及Viewcontroller生命周期简记_第1张图片
ios 应用生命周期

    如上图所示,ios有五种不同的生命周期状态,不同的状态间有着不同的关系。

这五种状态分别是:

1.Not Running(非运行状态。  指应用没有运行或被系统终止)

2.Inactive (前台非活动状态。  指应用正在进入前台状态,但是还不能接受事件处理)

3.Active(前台活动状态。  指应用进入前台状态,能接受事件处理)

4.Background(后台状态。  指应用进入后台后,依然能够执行代码。如果有可执行的代码就会执行代码,如果没有可执行的代码或者将可执行的代码执行完毕,应用会马上 进入挂起状态)

5.Suspended(挂起状态。  指应处于挂起的应用进入一种“冷冻”的状态,不能执行代码。如果系统内存不够,应用会被终止)

这五种状态在应用的使用过程中,会依据实际的使用场景,出现对应的生命周期状态跃迁的变化,在应用生命周期状态跃迁的过程 中,iOS系统会回调应用程序的委托对象,APPDelegate类中的不同方法,同时会发出相应的通知。详情参考下图:


ios学习笔记之ios应用生命周期及Viewcontroller生命周期简记_第2张图片
应用状态跃迁对应事件

ViewController生命周期

alloc -> initWithNibName -> loadView -> viewDidLoad -> viewWillAppear -> viewDidAppear -> viewWillDisappear -> viewDidDisappear -> dealloc

注意viewWillUnload和viewDidUnload已经在ios6被废弃了,因为Clearing references to views is no longer necessary。

注意1.没有viewWillLoad。

注意2.viewDidLoad和viewDidUnload并不是成对的。

具体流程可参考下图:


ios学习笔记之ios应用生命周期及Viewcontroller生命周期简记_第3张图片
VC生命周期


更加详细介绍,可参考生命周期 -

你可能感兴趣的:(ios学习笔记之ios应用生命周期及Viewcontroller生命周期简记)