//视图控制器的生命周期 从alloc/init在堆中分配内存,初始化完成开始,接下来就是loadView--viewDidLoad--viewWillAppear--viewDidAppear--viewWillDisappear--viewDidDisappear,最后,经过系统调用dealloc最终销毁。
-(instancetype)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
if (self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]) {
self.title = @"";
self.tabBarItem = [[UITabBarItem alloc]initWithTitle:@"我" image:[UIImage imageNamed:@"iconfont-me"] tag:104];
}
return self;
}
//视图将要出现
-(void)viewWillAppear:(BOOL)animated
{
NSLog(@"视图将要显示");
}
//视图已经出现
-(void)viewDidAppear:(BOOL)animated
{
NSLog(@"视图已经显示");
}
//视图将要消失
-(void)viewWillDisappear:(BOOL)animated
{
NSLog(@"视图将要消失");
}
//视图已经消失
-(void)viewDidDisappear:(BOOL)animated
{
NSLog(@"视图已经消失");
}
//加载视图,一旦重写了loadView,必须要指定根视图
-(void)loadView
{
#warning 注意:重写loadView,必须要指定根视图
NSLog(@"加载视图");
self.view = [UIView new];
}
//视图加载完了不一定显示
//在viewDidView中要使用的视图都是在loadView中来的。
-(void)viewDidLoad {
[super viewDidLoad];
self.view.backgroundColor = [UIColor cyanColor];
NSLog(@"视图已经加载完成");
}