关于ViewController 生命周期的理解

一个视图控制器里有以下几个方法:

- (void)viewDidLoad:

可以写大部分的初始化代码,但是不能写设置view大小的代码,view的尺寸应该放在- (void)viewWillAppear:(BOOL)animated;里.

- (void)viewWillAppear:(BOOL)animated;

在view准备要显示的时候调用,另外一个合适在viewWillAppear里做的就是lazy do stuff 缓式动作,比如lazy init,viewWillAppear是做一些很占资源的事情的地方,太费时的话就需要开启多线程来操作.

总之 viewWillAppear适合做两件事:1.最后时刻延时加载高开销的操作,2.改变view的几何特性。

- (void)viewWillDisappear:(BOOL)animated
当你的视图将要在屏幕上消失的时候调用
可以在这里记录你view的状态,数据。一般要写到磁盘里,下次进来的时候
- (void)viewWillDisappear:(BOOL)animated
{
    [super viewWillDisappear:animated]; // 这个要写
    [self rememberScrollPosition]; // 记住滚动的位置
    [self saveDataToPermanentStore]; // maybe do in did instead?
   // 注意不要在这里进行比耗时的操作,界面更流畅。 
}
- (void)viewDidAppear:(BOOL)animated; //可以在显示之后做一些操作,比如动画之类的。

文章参考:http://blog.csdn.net/totogo2010/article/details/8471739点击打开链接

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值