【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>
我正在尝试将UILabel
与在我的课程中创建的IBOutlet
链接。
我的应用程序崩溃并出现以下错误。
这是什么意思?
我该如何解决?
***由于未捕获的异常'NSUnknownKeyException'而终止应用程序,原因:'[<UIViewController 0x6e36ae0> setValue:forUndefinedKey:]:此类不符合键XXX的键值编码。
#1楼
如果它是仅iPhone应用程序,而不是通用应用程序,请确保以下字段为空:
目标>摘要> iPhone / iPod部署信息>主界面
如果您指定了xib,则会崩溃。
#2楼
可能是从Xib Interface引用已重命名或删除的组件的情况。 重新引用对我有用。
#3楼
我在重复的项目中遇到了这个问题,并通过检查2个地方来解决:
1-确保列表中有.m文件->项目-构建阶段-编译源
2-之后,转到界面生成器(可能是仅IB会发生错误),然后取消链接所有属性,标签,图像等。然后重新链接所有。 我意识到我已经删除了一个属性,但该属性仍在IB中链接。
希望它对某些人有用。
#4楼
此错误表明已连接的Interface Builder 对象已被删除/在其所有者的源(文件的所有者)中重命名 。
在界面生成器中按住Control键并单击“ 文件的所有者” ,如果您看到感叹号 ,则需要对其进行修复。
在下面的图片中,您可以看到“ aRemovedView”在其右侧带有感叹号,这是因为在IBOutlet视图对象已经在IB中连接时,我将其删除了。
这将产生以下错误: 由于未捕获的异常“ NSUnknownKeyException”而终止应用程序,原因:“ [[setValue:forUndefinedKey:]:此类与密钥 aRemovedView的密钥值不兼容” 。
#5楼
当我的视图控制器最初有一个.xib文件,但现在是通过编程创建时,这会发生在我身上。
即使我已从该项目中删除了.xib文件。 用户iPhone / iPad可能包含此ViewController的.xib文件。
尝试加载.xib文件通常会导致此崩溃:
Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<UIViewController 0x18afe0> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key welcomeLabel.'
以编程方式创建它时,解决方案可能是:
-(void)loadView {
// Ensure that we don't load an .xib file for this viewcontroller
self.view = [UIView new];
}
来源:oschina
链接:https://my.oschina.net/stackoom/blog/3141895