一个视图控制器里有以下几个方法:
- (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?
// 注意不要在这里进行比耗时的操作,界面更流畅。
{
[super viewWillDisappear:animated]; // 这个要写
 [self rememberScrollPosition]; // 记住滚动的位置
[self saveDataToPermanentStore]; // maybe do in did instead?
// 注意不要在这里进行比耗时的操作,界面更流畅。
}
- (void)viewDidAppear:(BOOL)animated; //可以在显示之后做一些操作,比如动画之类的。
文章参考:http://blog.csdn.net/totogo2010/article/details/8471739点击打开链接