下面就是视图控制器的一个生命周期了
ViewController.h
// 当屏幕点击的时候调用此函数
-(void) touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event
{
// 创建视图控制器二
ViewC02* vc =[[ViewC02alloc] init];
// 显示一个新的视图控制器到屏幕上
// p1:新的视图控制器对象
// p2:是否使用动画切换效果
// p3:切换结束后功能调用,不需要传nil值即可
[self presentViewController:vcanimated:YEScompletion:nil];
}
// 第一次加载视图时调用
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
self.view.backgroundColor = [UIColorblueColor];
NSLog(@"第一次加载视图时调用");
}
// 当视图控制器的视图即将显示时,调用此函数
// 视图分为:1:显示前(不显示) 2:正在处于显示状态3:已被隐藏
// 参数:表示是否有动画切换显示
// 每一次视图显示时都要被调用
-(void) viewWillAppear:(BOOL)animated
{
NSLog(@"视图即将显示");
}
// 视图即将消失时,调用此函数
// 参数:表示是否有动画切换后消失
// 当前的状态:视图还是显示在屏幕上的
-(void) viewWillDisappear:(BOOL)animated
{
NSLog(@"视图即将消失时");
}
// 当视图已经显示到屏幕后到瞬间调用此函数
// 参数:表示是否用动画显示切换
// 当前的状态已经到屏幕上
-(void) viewDidAppear:(BOOL)animated
{
NSLog(@"视图已经显示");
}
// 当前视图已经消失掉了
// 参数:表示是否用动画显示切换
// 当前的状态当前视图控制器已经消失从屏幕上
-(void) viewDidDisappear:(BOOL)animated
{
NSLog(@"视图已经消失");
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
// 点击当前控制器二代界面屏幕时
-(void) touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event
{
// 使用当前的控制器消失掉
// p1:是否有动画效果
// p2:结束后是否调用功能block快操作
[self dismissViewControllerAnimated:YEScompletion:nil];
}
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
// 控制器的颜色为橙色
self.view.backgroundColor = [UIColororangeColor];
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}