003:UIViewController

UIViewController介绍:

自身包含View,可以理解为一个容器:

  • 管理View视图的生命周期。
  • 响应用户操作。
  • 视图之间的切换以及交互。
  • 管理多个Vc和动画。

ViewController的生命周期:

方法调用:

  • -(instancetype)init;
  • - (void)viewDidLoad;
  • -(void)viewWillAppear:(BOOL)animated;
  • -(void)viewDidAppear:(BOOL)animated;
  • -(void)viewWillDisappear:(BOOL)animated;
  • -(void)viewDidDisappear:(BOOL)animated;
  • -(void)dealloc;

代码演示:

//1、示例代码

-(instancetype)init{
    self = [super init];
    if(self){
        NSLog(@"%s",__func__);
    }
    return self;
}

- (void)viewDidLoad {
    [super viewDidLoad];
    NSLog(@"%s",__func__);
}

-(void)viewWillAppear:(BOOL)animated{
    [super viewWillAppear:animated];
    NSLog(@"%s",__func__);
}

-(void)viewDidAppear:(BOOL)animated{
    [super viewDidAppear:animated];
    NSLog(@"%s",__func__);
}

-(void)viewWillDisappear:(BOOL)animated{
    [super viewWillDisappear:animated];
    NSLog(@"%s",__func__);
}

-(void)viewDidDisappear:(BOOL)animated{
    [super viewDidDisappear:animated];
    NSLog(@"%s",__func__);
}

-(void)dealloc{
    NSLog(@"%s",__func__);
}

//2、打印日志

2022-12-10 16:51:37.050515+0800 SampleApp[1488:26162] -[TestViewController init]
2022-12-10 16:51:37.333103+0800 SampleApp[1488:26162] -[TestViewController viewDidLoad]
2022-12-10 16:51:37.338885+0800 SampleApp[1488:26162] -[TestViewController viewWillAppear:]
2022-12-10 16:51:37.534985+0800 SampleApp[1488:26162] -[TestViewController viewDidAppear:]
2022-12-10 16:51:53.327712+0800 SampleApp[1488:26162] -[TestViewController viewWillDisappear:]
2022-12-10 16:51:53.868297+0800 SampleApp[1488:26162] -[TestViewController viewDidDisappear:]
2022-12-10 16:51:53.871962+0800 SampleApp[1488:26162] -[TestViewController dealloc]

UIView和UIViewController:

负责内容:

  1. UIView负责页面内容的呈现。
  2. UIViewController负责管理多个UIView「以及业务逻辑的出处理」。
  3. UIViewController管理UIView的同时负责不同页面的切换。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值