【问题标题】:"this class is not key value coding-compliant for the key...."“这个类不符合键的键值编码......”
【发布时间】:2013-06-03 10:39:55
【问题描述】:

在过去的几天里,每次我在 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 或模拟器上 - 一样。

我现在什么都不能运行!!

*clean 不起作用! *

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

注意: 解决了。这是 appdelegate.m 的问题 谢谢谁帮忙。

【问题讨论】:

  • 有东西试图访问@property 审查您IBOutlet 连接。
  • @kirtimali 看到了.. 没有任何帮助...
  • @bit-whacker 我做了,没有任何问题。以前可以正常工作的东西,未受影响 - 也会犯同样的错误。
  • 您写道“现在 - 在我尝试调试的每一个应用程序中。”你的意思是,例如,如果你创建一个新的空 iPhone 应用并运行它,你仍然会遇到这个问题吗?

标签: iphone ios objective-c exception


【解决方案1】:

检查您的 XIB 中的 IBOutlet 连接

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

【讨论】:

  • 不不不,它确实存在于这个项目中,并且通过文件的所有者正确连接
  • 嗯,只需删除其中的所有连接.. 可能对您有帮助
  • 试图这样做并在没有连接的情况下启动它 - 同样的错误
【解决方案2】:

我敢打赌,您的 xibs 中的 File's Owner 内容搞砸了。您的其中一个视图设置为 File's Owner 的 playBtn。但是,当需要取消归档 nib 时,所有者没有 playBtn 属性,因此取消归档失败。

你可以做两件事:

1) 检查您的 “Connections Inspector” 选项卡,查看引发错误的视图。 移除所有插座连接并重新连接所有插座。

2)

祝你好运!!!

【讨论】:

  • @EliranEfron :检查更新的答案。
  • 完成了,它仍然无法正常工作......这可能是我的 xcode 的问题吗?
  • @EliranEfron:当然不是。尝试使用一些按钮和标签创建简单的应用程序并检查它是否有效。
  • 好的,我刚刚做了一些东西,它工作了,但是我如何在我的项目中修复它?
  • 我所有的旧项目都无法运行!即使他们以前做过
【解决方案3】:

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

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

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

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

【讨论】:

    【解决方案4】:

    我解决了。

    这是与 uitabbar 的 appdelegate.m 的问题。

    感谢帮助和尝试过的人:)

    【讨论】:

      猜你喜欢
      • 2016-04-01
      • 2014-01-12
      • 2015-06-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-15
      相关资源
      最近更新 更多