UIViewController中的viewDidLoad实现和调用

本文详细解读了iOS应用中视图控制器的视图加载流程,特别是如何通过viewDidLoad和loadView方法实现视图的加载与初始化。通过实例代码演示,帮助开发者理解视图加载的机制及其关键步骤。

我们都知道viewDidLoad是在视图加载时调用,但是具体是何时调用,看下面代码就清楚了

UIViewController.m的部分代码

- (BOOL)isViewLoaded
{
    return (_view != nil);
}
- (UIView *)view
{
    if ([self isViewLoaded]) {
        return _view;
    } else {
        const BOOL wereEnabled = [UIView areAnimationsEnabled];
        [UIView setAnimationsEnabled:NO];
        [self loadView];
        //当_view为nil时,首先调用loadView初始化_view,紧接着调用viewDidLoad
        [self viewDidLoad];
        [UIView setAnimationsEnabled:wereEnabled];
        return _view;
    }
}
- (void)loadView
{
    self.view = [[UIView alloc] initWithFrame:CGRectMake(0,0,320,480)];
}
- (void)viewDidLoad
{
}


转载于:https://my.oschina.net/nerozhao/blog/465271

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值