ios - Xcode - 如何修复 'NSUnknownKeyException' ,原因 : … this class is not key value coding-compliant for the key X"error?

标签 ios macos cocoa cocoa-touch interface-builder

我正在尝试将 UILabel 与在我的类中创建的 IBOutlet 链接。

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

这是什么意思?

如何修复它?

*** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<UIViewController 0x6e36ae0> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key XXX.'

最佳答案

您的 xib 中的连接可能较差。

我多次遇到此错误。虽然在这种情况下 TechZen 的答案是绝对正确的,但另一个常见原因是当您更改 .h/.m 中 IBOutlet 属性的名称时,您已经将其连接到 Nib 中的文件所有者.

从你的 Nib :

  1. 在 IB 中选择对象并转到“连接检查器”。
  2. 在“引用 socket ”下,确保您的对象尚未连接到旧属性名称...如果是,点击小“x”删除引用并再次构建。

    enter image description here

如果您使用 Storyboard,另一个常见原因是您的 UIButton 可能有多个分配(解决方案与 Nib 几乎相同):

  1. 打开 Storyboard并右键单击 UIButton
  2. 您将看到该按钮有多个分配/引用。 删除带有小“x”的“Main...”灰色窗口之一:

    example 2

关于ios - Xcode - 如何修复 'NSUnknownKeyException' ,原因 : … this class is not key value coding-compliant for the key X"error?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45863020/

相关文章:

ios - 捕获全局手势(如何构建 AppStore "BUY"按钮)

iOS View 可见性消失

linux - 如何检测 Go 中的操作系统版本?

Mac下的Python开发

macos - 如何在没有 GPU 的 macOS catalina 10.15.7 上安装 nvcc?

cocoa - NSClipView 在 setDrawsBackground 上出现重影、伪影、痕迹 :NO

macos - 如何从货币代码中获取 "locale"?

ios - 在 iOS 应用程序中采用侧边菜单。查看 Controller 结构问题

cocoa - 如何更改 NSWindow 标题栏的高度?

iphone - 后台任务是这个问题的解决方案吗?