我有一个UIViewController子类,我正在实例化并试图像这样推到navigationController:

MenuVC *menuVC = [[MenuVC alloc] init];
[self.navigationController pushViewController:menuVC animated:YES];

我没有与此 class 相关联的nib文件,因此仅执行一个简单的..alloc] init]而不是initWithNib:bundle:即可。

我仍然在pushViewController调用上崩溃,跟踪显示此信息
reason: '-[UIViewController _loadViewFromNibNamed:bundle:] loaded the "MenuVC" nib but the view outlet was not set.'

我不知道为什么会这样。我有其他的 View Controller ,可以用相同的方法很好地加载。

最佳答案

我想我在Apple的Docs中找到了答案:



因此,这意味着如果找到一个笔尖,则操作系统实际上会尝试加载该笔尖。我的 bundle 包中确实有一个笔尖,其名称与VC相同,但没有关联它的File Owner

关于iphone - _loadViewFromNibNamed被调用,即使没有与UIViewController关联的 Nib 也是如此,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15121735/

10-12 06:12