进入ViewController的头文件,查看这个提供的方法,以下列出一些有关iOS视图生命周期的几个方法:
- (void)viewDidLoad- (void)viewWillAppear:(BOOL)animated- (void)viewDidAppear:(BOOL)animated- (void)viewWillDisappear:(BOOL)animated-(void)viewDidDisappear:(BOOL)animated
那么这些方法什么时候执行?执行的顺序又是什么呢?
先给出一段代码,然后解释:
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
NSLog(@"viewDidLoad");
}
- (void)viewWillAppear:(BOOL)animated{
[super viewWillAppear:animated];
NSLog(@"viewWillAppear");
}
- (void)viewDidAppear:(BOOL)animated{
[super viewDidAppear:animated];
NSLog(@"viewDidAppear");
}
- (void)viewWillDisappear:(BOOL)animated{
[super viewWillDisappear:animated];
NSLog(@"viewWillDisappear");
}
-(void)viewDidDisappear:(BOOL)animated{
[super viewDidDisappear:animated];
NSLog(@"viewDidDisappear");
}
当我们首次打开应用,进入该代码所在的视图时,执行的方法是:
viewDidLoad、viewWillAppear、viewDidAppear
当我们跳转到另一个页面时,执行的方法是:
viewWillDisappear、viewDidDisappear
当我们再次从另一个页面跳转到代码所在的页面时,执行的方法好是:
viewWillAppear、viewDidAppear
当然,viewDidLoad方法在页面出现的时候是否执行取决于此时内存中的视图是否还存在。
本文详细介绍了iOS中UIViewController生命周期的各个阶段,包括viewDidLoad、viewWillAppear、viewDidAppear、viewWillDisappear和viewDidDisappear等方法的调用时机及顺序,并通过具体代码示例进行说明。
4690

被折叠的 条评论
为什么被折叠?



