UIViewController生命周期 执行顺序
- (void)loadView{
// 如果子类不使用NIB,那么它们应该在这里创建自己的自定义视图层次结构。不要手动调用
// loadview的作用 改变控制器原本自动创建的view,现在使用self.view则得到的是xxx View的对象。
// 我自己的理解是 这个可以用自定义的视图给VC瘦身,也能起到视图于VC分离的作用
self.view = [[UIView alloc]initWithFrame:[UIScreen mainScreen].bounds];
self.view.backgroundColor = [UIColor blueColor];
NSLog(@"%s", __FUNCTION__);
}
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
// 在控制器的视图被加载到内存后调用。
NSLog(@"%s", __FUNCTION__);
}
- (void)viewWillAppear:(BOOL)animated{
[super viewWillAppear:animated];
// 通知视图控制器其视图即将添加到视图层次结构中。
NSLog(@"%s", __FUNCTION__);
}
- (void)viewWillLayoutSubviews {
[super viewWillLayoutSubviews];
// 调用以通知视图控制器其视图即将布局其子视图。
NSLog(@"%s", __FUNCTION__);
}
- (void)viewDidLayoutSubviews {
[super viewDidLayoutSubviews];
// 被调用以通知视图控制器其视图刚刚布置了其子视图。
NSLog(@"%s", __FUNCTION__);
}
- (void)viewDidAppear:(BOOL)animated{
[super viewDidAppear:animated];
// 通知视图控制器其视图已添加到视图层次结构中。
NSLog(@"%s", __FUNCTION__);
}
- (void)viewWillDisappear:(BOOL)animated{
[super viewWillDisappear:animated];
// 通知视图控制器其视图即将从视图层次结构中删除。
NSLog(@"%s", __FUNCTION__);
}
- (void)viewDidDisappear:(BOOL)animated{
[super viewDidDisappear:animated];
// 通知视图控制器其视图已从视图层次结构中删除。
NSLog(@"%s", __FUNCTION__);
}
- (void)dealloc {
// 销毁
NSLog(@"%s", __FUNCTION__);
}
网友评论