我一直在尝试在我的测试中验证(GTM),当加载一个nib文件时,它的IBOutlets在InterfaceBuilder中正确连接。
然而,尽管在断言引用应该存在之前调用[myViewController viewDidLoad],我仍然会获得nil引用。
这里有没有问题,还是应该以某种方式嘲笑?
欢呼声
答案 0 :(得分:10)
调用[myViewContoller viewDidLoad]
不会加载视图。你想要[myViewController loadView]
,它会加载.nib和引用。
答案 1 :(得分:3)
你不应该调用-viewDidLoad。
如果通过“加载nib文件时”,则表示您正在调用-initWithNibName:bundle :, 加载nib。这只是设置用于加载视图的笔尖名称。加载视图的“正确”方法是调用 - [UIViewController视图](如果尚未加载,则调用loadView,默认情况下从nib加载,其默认名称为[[self class] description]或所以我认为)。 - [UIViewController视图]将为您调用viewDidLoad。