我试图将UILabel与在类中创建的IBOutlet链接起来。

我的应用程序崩溃与以下错误。

这是什么意思?

我该怎么解决呢?

***终止应用由于未捕获异常'NSUnknownKeyException',原因:'[<UIViewController 0x6e36ae0> setValue:forUndefinedKey:]:这个类不是键值编码兼容的键XXX。'


当前回答

我不得不从模拟器/iPhone中删除应用程序来消除这个错误。

其他回答

我也有同样的问题,原因是在接口生成器中指定了一个模块(而不是让它为空)。所以,当我使用一个不同于我设置的模块时,应用程序会崩溃:S…希望这能帮助别人,因为我的问题不是由于损坏或过时的出口!

我不得不从模拟器/iPhone中删除应用程序来消除这个错误。

当我试图实现一个表的自定义ViewCell时,我有这个错误。当我突出显示XIB的视图控制器并连接到CellView中的元素时,会导致错误“这个类不是键值编码兼容的键”,一旦我删除了这些,它就摆脱了错误。

删除下图中的连接。

只要确保你只有与表格视图单元格的连接。要检查,单击表视图单元格,并在检查器中寻找您的连接。

这种情况只发生在我在设备(iPhone)上调试时。iOS模拟器运行正常。用Xcode做一个“Product->Clean”似乎解决了这个问题,但我不知道为什么。

我得到了同样的错误,当我手动加载一个视图从一个笔尖。结果是我忘记设置视图的所有者。

例如,如果你以以下方式加载一个视图,

 let view = Bundle.main.loadNibNamed("MyNibFileName",
                                 owner: nil,
                                 options: nil)?.first as! UIView

然后添加一个IBOutlet, IBOutlet不能被引用,应用程序会因为上面的错误而崩溃。

修复:为视图分配一个所有者。

 let view = Bundle.main.loadNibNamed("MyNibFileName",
                                 owner: self,
                                 options: nil)?.first as! UIView