我在应用程序的另一端创建导航控制器时遇到问题:) ...我的意思是点击这个小信息按钮并翻转到另一边...

我收到此错误:由于未捕获的异常'NSInternalInconsistencyException'而终止应用程序,原因:' - [UIViewController _loadViewFromNibNamed:bundle:]加载了“InfoController”。笔尖,但视图出口没有设置。'

我知道问题出在将视图插座连接到视图的地方......

我的IB的屏幕截图在这里:

我会感激任何帮助,因为这是我需要完成的最后一部分应用程序......

有帮助吗?

解决方案

UIViewController有一个名为view的ivar。如果未在IB中连接(或在代码中设置),您将收到此消息。在IB中,单击“文件所有者”,然后单击“连接”按钮。检查器中的选项卡。在“Outlets”下面。什么是“视图”参数连接到?它需要连接到您要从InfoController控制的视图。

话虽如此,您在屏幕截图中显示的内容存在一些不一致之处。通常,您不会将UINavigationController作为UIViewController xib的一部分。相反,它应该在您的MainWindow.xib中。您可以尝试将文件所有者的连接拖到导航控制器内部的视图中,但我认为这不会起作用。您必须将导航控制器移动到MainWindow.xib,然后使用xib InfoController将其视图设置为InfoController类型。

如果不清楚,请使用“基于导航的应用程序”创建一个新项目。 Xcode中的模板。然后在IB中打开MainWindow.xib文件。你会在那里看到应该如何设置导航控制器。

顺便说一句,如果你将'iphone'添加为标签,你会对这个问题有更多的了解。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top