UIViewController _loadViewFromNibNamed:bundle 加载了“XXXViewController”笔尖,但未设置视图出口。 -*使用故事板*

Posted

技术标签:

【中文标题】UIViewController _loadViewFromNibNamed:bundle 加载了“XXXViewController”笔尖,但未设置视图出口。 -*使用故事板*【英文标题】:UIViewController _loadViewFromNibNamed:bundle loaded the "XXXViewController" nib but the view outlet was not set.' -*Using Storyboard* 【发布时间】:2012-11-15 08:53:09 【问题描述】:

我正在使用 Storyboard 浏览我的视图控制器。我有一个名为(RootVC)的根视图控制器,我已经通过“推送”segue 连接到下一个视图控制器(称为 SecondVC)。我在 RootVC 中有一个按钮,按下时会调用 pushViewController。 当我运行它时,我最终看到以下错误:

* 由于未捕获的异常“NSInternalInconsistencyException”而终止应用程序,原因:“-[UIViewController _loadViewFromNibNamed:bundle:] 加载了“SecondVC”笔尖,但未设置视图出口。'

我环顾四周,看到很多人认为 UIView 没有正确连接到 xib 中。我正在使用 Storyboard,所以它有点不同,但我仍然可以看到我的 SecondVC 的视图出口连接到属于它的 UIView。从外观上看,Storyboard 默认会建立这种关联。

有人对可能出现的问题有任何想法吗?如果需要我的 Storyboard 的屏幕截图,我可以提供。

提前致谢。

【问题讨论】:

【参考方案1】:

我有同样的问题,确保你没有

@synthesize view; 

在你的 viewcontroller .m 文件中。

【讨论】:

【参考方案2】:

在您的故事板中,右键单击文件的所有者并选择您的视图作为它的视图出口。

【讨论】:

【参考方案3】:

视图的名称“视图”是保留名称。当您要合成一个名为“View”的视图时,会出现此错误。

解决方案是将视图重命名为您自己的名称。

【讨论】:

【参考方案4】:

我不知道只是提供想法

你可能已经看过了 'NSInternalInconsistencyException', reason: '-[UIViewController _loadViewFromNibNamed:bundle:] loaded the GameView nib but the view outlet was not set

它与连接有关。界面生成器中视图控制器元素的类名应与类名(区分大小写)与派生自 UIViewController 的适当类匹配。您不需要创建命名视图的 IBOutlet。进行清洁可能会有所帮助。这也可能是您的代码中的拼写错误。

【讨论】:

以上是关于UIViewController _loadViewFromNibNamed:bundle 加载了“XXXViewController”笔尖,但未设置视图出口。 -*使用故事板*的主要内容,如果未能解决你的问题,请参考以下文章

你真的了解UIViewController跳转吗?

05_视图控制器_2 UIViewController的生命周期

UIViewController _loadViewFromNibNamed:bundle: 加载了“视图”笔尖,但未设置视图出口。

UIViewController _loadViewFromNibNamed:bundle 加载了“XXXViewController”笔尖,但未设置视图出口。 -*使用故事板*

问题:-[UIViewController _loadViewFromNibNamed:bundle:] loaded the "BlueView" nib but the vie

如何在 iOS 中调试“[UIViewController _loadViewFromNibNamed:bundle:] 加载了“SearchView”笔尖但未设置视图出口”?