UIViewController的生命周期及执行顺序
当一个视图控制器被创建,并在屏幕上现实的时候。代码的执行顺序:
1.alloc 创建对象,分配空间。
2.init 初始化对象,初始化数据。
3.loadView 从nib载入视图,通常这一步不需要去干涉。除非你没有使用xib文件创建视图
4.viewDidLoad 载入完成,可以进行自定义数据以及动态的创建其他空间。
5.viewWillAppear 视图将出现在屏幕之前。
6.viewDidAppear 视图在屏幕上渲染完成。
当一个视图被移除屏幕并且销毁的时候执行顺序:
1.viewWillDisappear 视图被移除之前。
2.viewDidDisappear 视图被移除之后。
3.dealloc 销毁视图。
对UIViewController中常用的方法解释及用途:
1.-(void)viewDidLoad
一个APP在载入时会先通过调用loadView方法或者载入IB中创建的初始界面的方法,将视图载入到内存中。然后会调用viewDidLoad方法来进行进一步的设置。通常,我们对于各种初始数据的载入,初始设定等很多内容,都会在这个方法中实现,所以这个方法是一个很常用,很重要的方法。
但是要注意,这个方法只会在app刚开始加载的时候调用一次,只能用来初始化设置。
2.-(void)viewWillAppear:(BOOL)animated
系统在载入数据之后会在屏幕上显示之前调用,对即将要显示的视图作进一步设置。例如,设备方向。
当app有多个视图时,在试图切换时,并不会重新载入viewDidLoad方法,所以对需要数据更新的话只能用这个方法。
3.-(void)viewDidAppear:(BOOL)animated
由于特殊原因,不能在viewWillAppear方法对视图进行更新,可以调用这个函数。
4.-(void)viewWillDisappear:(BOOL)animated
在视图转换时,当前视图被移除、覆盖时,调用此方法。
5.-(void)viewDidDisappear:(BOOL)animated
对已经消失、覆盖或者隐藏的视图,调用。
最新内容
- Linux系统下systemctl常用命令以及service文件配置
- CI PHP7 session 不能读取的问题
- centos 7.4 基本配置
- mysqldump导入导出数据库总结
- Linux下的tar压缩解压缩常用命令
- 查看 SELinux状态、临时关闭SELinux、永久关闭SELinux
- centos6.8 yum安装mysql 5.6
- CentOS之7与6的区别2
- CentOS之7与6的区别1
- Mysql 忘记root密码的完美解决方法
- 输入密码登录,Linux scp (rsync)设置nohup后台运行
- ubantu zabbix部署——安装配置zabbix agent详解
- Zabbix客户端(agent端口)安装配置
- CentOS 7添加开机启动服务/脚本
- 阿里云机器配置 centos 6.8