可以在viewController的'init'完全执行之前调用viewDidLoad吗?

时间:2011-03-14 22:16:09

标签: iphone objective-c

关于视图控制器如何从init加载到内存到viewDidLoad的全序列事件是什么?

如果您执行以下操作:

TabControllerClass *cc = [[TabControllerClass alloc] initWithCustomData:something];

在到达自定义初始化方法'initWithCustomData'之后,是否可以调用类的viewDidLoad?

- (id)initWithCustomData:(NSString *)something
{
    if (self = [super init])
    {
        // A bunch of other initialization happens
    }

    // Would you reach here before 'viewDidLoad' is invoked?
    return self;
}

我的TabControllerClass继承自UITabBarController。

1 个答案:

答案 0 :(得分:3)

我假设没有。我的意思是,在正确分配和初始化控制器之前,如何调用任何方法?但是,您可能会发现-[ControllerClass initWithCustomData]初始值设定项不是指定的初始值设定项,可以解释为什么它没有被调用。