20

我正在尝试使用UINavigationController. 我有两个以编程方式创建的视图。当在第一个视图UIButton上按下a 时,第二个视图应该出现在前台。

但这里应用程序崩溃异常:

已加载笔尖,但未设置视图出口

这可能是什么原因以及如何解决它。

4

6 回答 6

33

按照以下步骤

1)打开您的xib文件,然后右键单击文件所有者并拖动到您的第一个视图

在此处输入图像描述

2)然后将该视图与“视图”的出口绑定

在此处输入图像描述

希望你能得到它...

于 2013-06-26T13:19:51.990 回答
17

执行此操作(您在 xib 中没有视图,因此添加一个然后执行此操作):

在此处输入图像描述

于 2013-06-26T13:26:50.953 回答
6
  • 打开导致问题的 XIB 文件
    • 单击左侧栏上的文件所有者图标(顶部一个,看起来像一个黄色轮廓框)
    • 如果您没有看到右侧边栏,请单击工具栏中“视图”上方的第三个图标。这将显示右侧边栏
    • 在右侧边栏中,单击第三个选项卡——看起来有点像报纸的选项卡
    • 在顶部的“自定义类”下,确保 Class 是应与该视图对应的 ViewController 的名称。如果没有,请输入
    • 在右侧边栏中,单击最后一个选项卡 - 看起来像一个带有箭头的圆圈
    • 您应该在其下方看到带有“视图”的“出口”。将旁边的圆圈拖到左侧栏上的“查看”图标(底部一个,看起来像一个带有粗灰色轮廓的白色正方形
    • 保存xib并重新运行

谢谢,

于 2013-06-26T13:23:24.207 回答
6

如果您在“连接检查器”(最右侧)选项卡上没有看到可供选择的“视图”出口,我发现我必须返回文件所有者自定义类的通用视图控制器(例如 UICollectionViewController)而不是我之前输入的子类。关闭并重新打开 Xcode 后,视图出口再次出现,所以我按照 sagarcool89 的回答中的描述连接了它。然后我将我的文件所有者自定义类设置回我的子类,并最终克服了这个错误。

于 2014-06-14T02:32:45.210 回答
3

选择File's owner您的 .xib,打开Identity Inspector,确保Custom Class设置为与控制器的类名相同的名称。如果您分别创建 IB 文件和控制器(在单独的步骤中),您可能会忘记检查此项。

于 2014-02-20T23:11:23.503 回答
3

如果您已经尝试了所有方法,但仍然出现此错误,请尝试从头开始重新创建类文件,但请记住选中“同时创建 XIB 文件”复选框。这将自动链接一些在单独创建这些文件时未链接的项目。创建完成后,您可以将所有内容剪切并粘贴到新的 XIB 上,它应该可以正常工作。

于 2015-02-10T18:03:54.287 回答