我升级到Xcode 6 beta 4,现在我的应用程序不断崩溃的消息

接口构建器文件中的未知类X。

它崩溃是因为Xcode找不到我在Storyboard中链接的自定义类,但它显示它们在Xcode界面中正确链接。

我确定一切都连接正确。我唯一的其他选择可能是删除整个故事板文件并从头开始,因为它可能会以某种方式损坏。

编辑:我还想补充说,我尝试了清洁,重置模拟器,搞乱构建阶段等。这些都没用。


当前回答

我也遇到了同样的问题,但解决方法不同。

项目文件夹有点损坏,所以我不得不复制我的项目文件夹到另一个文件夹,例如你的桌面,然后打开项目。

当它打开转到你的接口构建器项目,你会看到他识别你的脚本,然后你点击你的脚本名称并按enter,你会看到模块输入将填充它自己。

它会像魔法一样起作用!: D

其他回答

在我的案例中,问题是由于将我们的主故事板设置为启动屏幕,并且在应用程序启动时,对于故事板中引用的每个自定义视图控制器,我都会得到一个控制台错误(没有崩溃)。

我们已经讨论了从xib和启动图像到故事板,我还没有抽出时间让启动屏幕重新工作。当我终于开始创建一个没有自定义视图控制器(这是不允许的)的骨架启动故事板时,这些控制台错误就不再出现了。

这可以在任何6.0以上的Xcode中发生。在Swift项目中重命名一些ViewController类后,我就遇到了这种情况(但我猜Obj-C也会发生这种情况)。你只需要打开接口构建器,转到重命名了类的ViewController的身份检查器,选择class并按Enter。这将重命名类重新分配给选定的ViewController,也重置模块值在重命名类后丢失。

Xcode 8.1的更新(也可能是8.0):

Xcode 8.1崩溃了。简单和恼人的只是崩溃,不打印任何东西。我追了一个小时的幻影崩溃,只是为了发现它是同一件事——IB中未分配的类。如果你得到了一些幻影崩溃,首先仔细检查IB中未分配的类。

在我的例子中,我将app设置为universal app,所以xcode创建了两个故事板。但我只使用(设计)iPhone故事板。并尝试在iPad上运行应用程序。为了解决问题,只需要为iPhone制作应用程序,并且工作出色。

我在Xcode Version 6.1 (6A1052d)中遇到了同样的问题。我认为如果你重命名App / Xcode项目,就会出现这个问题。

我的解决方案是手动在接口构建器中添加模块名称。

在我的例子中,在Storyboard / xib中引用的类没有Target Membership设置。

为了解决这个问题,将该类的.h和.m文件赋予与其他类相同的目标成员资格。