您的位置:首页 > 移动开发 > IOS开发

控制器生命周期

2016-07-13 21:23 253 查看
当一个视图控制器被创建,并在屏幕上显示的时候。 代码的执行顺序:

(1) alloc – 创建对象,分配空间

(2) init (initWithNibName) – 初始化对象,初始化数据

(3) loadView – 从nib载入视图 ,这一步一般不需要干涉。除非没有使用xib文件创建视图

(4) viewDidLoad – 加载完成,可以进行自定义数据以及动态创建其他控件

(5) viewWillAppear – 视图即将出现在屏幕

(6) viewDidAppear – 视图已在屏幕上渲染完成

当一个视图被移除屏幕并且销毁的时候的执行顺序:

(1) viewWillDisappear – 视图将被从屏幕上移除之前执行

(2) viewDidDisappear – 视图已经被从屏幕上移除,用户看不到这个视图了



viewDidUnload :当发生内存警告的时, 如果这个视图并不是当前正在显示的视图,则 viewDidUnload 将会被执行,这个视图的所有子视图将被销毁,以释放内存, 此时开发者需要手动对viewLoad、viewDidLoad中创建的对象释放内存。 因为当这个视图再次显示在屏幕上的时候,viewLoad、viewDidLoad 再次被调用,以便再次构造视图。

实例:

点击一个控制器跳转到另一个控制器,方法调用:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息