2017-08-03 142 views
0

兼容编码-I得到以下错误消息,当用户按下一个使用“查看”命令来呈现一个按钮SixthViewController的Xcode 8错误:这类不是密钥值用于密钥enemyTitleLabel

2017-08-03 15:19:12.180963-0400 App[5298:1956556] Unknown class SixthViewController in Interface Builder file. 2017-08-03 15:19:12.187793-0400 App[5298:1956556] * Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[ setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key enemyTitleLabel.' * First throw call stack: (0x18a4defe0 0x188f40538 0x18a4deca8 0x18aef468c 0x190974e94 0x190b18c70 0x18a3fffac 0x190b17664 0x190977e6c 0x1907420b0 0x1906107ac 0x1906106e0 0x190fe25b8 0x19095d5ec 0x1909819b8 0x1909847e4 0x190701794 0x190987f30 0x190cc86fc 0x190dd9600 0x190dd9408 0x190978a14 0x10002f10c 0x10002f184 0x190645c54 0x190645bd4 0x190630148 0x1906454b8 0x190644fd4 0x19064036c 0x190610f80 0x190e0aa20 0x190e0517c 0x190e055a8 0x18a48d42c 0x18a48cd9c 0x18a48a9a8 0x18a3bada4 0x18be25074 0x190675c9c 0x10003f708 0x1893c959c) libc++abi.dylib: terminating with uncaught exception of type NSException

只要没有UIButtonUILabels链接到任何东西,我就可以加载SixthViewController;但只要我链接其中的任何一个(不仅仅是enemyTextLabel),我会得到相同的错误(显然,关键的变化取决于我链接的元素)。

我已经尝试解除链接/重新链接所有内容,并确保代码中没有错别字,并且无论如何,当项目重新链接时错误仍然存​​在。

我查看了报告相同错误的问题,解决方案似乎是仔细检查代码中的意外链接/拼写错误/错误。我检查过我的项目多次,找不到任何这些。

如何解决此错误?

+0

您的StoryBoard中仍然有一个应该连接到您的代码的插座,但代码中的插座不在那里。它正在寻找它,但无法在您的代码中找到它。至少,我认为这是问题所在。 –

+0

我怀疑,但“enemyTitleLabel”插座实际上与我的代码“@IBOutlet weak var enemyTitleLabel:UILabel!”相关联。 –

+0

您的'SixthViewController'是否包含在您的应用目标中?界面生成器找不到它,所以它只是创建一个普通的'UIViewController'并试图将你的插座连接到它。 – dan

回答

0

这个问题可能是因为作为一个Swift子类,你的视图控制器可能实际上获得了名称空间的Objective-C名称,即SomeProject.SixthViewController,而nib加载机制只是寻找SixthViewController。这通常发生在Interface Builder中的Module字段为空的情况下。您应该检查您的xib/storyboard视图控制器的引用位置,并在Identity inspector中确保Module字段已设置为您的项目模块。如果你这样做,它应该工作。

0

打开Xcode选择您运行代码打开构建阶段 - >编译源的目标。

添加其中有“enemyTitleLabel”标签的类(viewController.m)。

enter image description here

0

右键单击包含enemyTitleLabel标签的控制器(或单元)中的每个项目。滚动浏览弹出菜单,直至到达引用插座部分,并检查引用插座中的每个引用插座是否位于此控制器(或桌面视图单元)的类中。

这是我在开发时遇到的一个常见问题,特别是在使用tableview单元格时。

相关问题