根据从init到viewDidLoad的视图控制器如何加载到内存中,全序列事件是什么?viewDidLoad可以在viewController的'init'完全执行之前调用吗?
如果你做这样的事情:
TabControllerClass *cc = [[TabControllerClass alloc] initWithCustomData:something];
可以在类的viewDidLoad获得到达定制init方法,“initWithCustomData”结束之前调用?
- (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。
你是否实现了loadView,或者你使用一个笔尖来构造实际视图?我不确定它是否有影响,但是如果你使用initWithNib :(你明显不这样做),那么这个问题可能与以编程方式构造视图的方式不同。 – Robin 2011-03-14 22:20:54
没有nib加载,这个类继承自UITabBarController。 – 2011-03-14 22:27:02
呃,你不应该继承UITabBarController。这也许可以解释这个问题(正如Alexsander所写,你的方法可能不是指定的初始化器)。如果您必须覆盖UITabBarController的某些方法,请使用Categories。 – Robin 2011-03-14 22:29:20