“这个类不是关键值编码兼容的密钥....”

时间:2013-06-03 10:39:55

标签: iphone ios objective-c exception

过去几天我每次在xCode中运行构建时都会出现此错误:

Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<UIApplication 0x1dd4a1c0> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key playBtn.'
在开始时它是在我做的事情。 比我删除它并且它仍然存在 - 在一个对象(如此playBtn这里)不再存在。

现在 - 在我尝试调试的每个应用程序中。 如果在我的iPhone或模拟器上 - 相同。

我现在无法运行任何东西!!

*干净不起作用! *

我该怎么办?我不能这样工作..

通知: 解决了。这是appdelegate.m的一个问题 感谢谁帮助过。

4 个答案:

答案 0 :(得分:2)

检查您的XIB中的IBOutlet连接

你说playBtn不存在,所以检查连接是否仍然存在,他们会显示!在连接中标记代替点。

enter image description here

答案 1 :(得分:1)

我打赌你的文件所有者的东西搞砸了你的xib。你的一个视图被设置为文件所有者的playBtn。但是,当取消归档笔尖时,所有者没有playBtn属性,因此取消归档失败。

你可以做两件事:

1)检查“Connections Inspector”标签,查看引发错误的视图。 删除所有插座连接并重新连接所有插座。

2)

enter image description here

GoodLuck !!!

答案 2 :(得分:1)

问题在于你是间接地(可能是当你的一个笔尖被解包时)在-setValue:forKey:上调用UIApplication

您可以通过创建新的空iPhone项目并将以下行添加到您的应用代表-application:didFinishLaunchingWithOptions:来重现此问题。

[[UIApplication sharedApplication] setValue:[[UIButton alloc] init] forKey:@"playBtn"];

如果没有回溯或甚至是完整的日志,很难确定,但很可能您遇到的问题与here相同。

答案 3 :(得分:0)

我解决了。

appdelegate.m与uitabbar有问题。

感谢谁帮助过以及那些尝试过的人:)