ios - UIViewController 与键 XXXXX 的键值编码不兼容。 IB 中没有错误的连接

标签 ios xcode

从我的主视图 Controller 显示 EditViewController 时出现运行时错误:

'[<EditViewController 0x7fbef90> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key saveChanges.'

我已经完成了我能想到的所有不同的 Google/Stack Overflow 搜索,我的所有结果都涉及标签栏或 Interface Builder 中的错误连接。我的项目没有选项卡栏,我删除了 Nib 中每个对象的所有连接(除了从文件所有者、EditViewController 到 View 的连接)。 EditViewController 实际上有一个名为 -(IBAction)saveChanges 的方法。

这让我发疯,我不知道我到底应该做什么。提前致谢。

最佳答案

从顶部 viewIBOutlet 可能没有任何无效连接,但检查 File's OwnerFirst Responder 可能的 IBAction 与被注释掉或不存在的方法有联系。

另一个想法是手动断开并重新连接每个连接。我遇到了一些问题,我在 IB 中连接后将 IBAction 方法从 - (IBAction)doStuff 更改为 - (IBAction)doStuff:(id)sender 但连接仍然存在当它应该说 doStuff: 时说 doStuff。那个冒号看起来不太像(而且在 IB 中很难区分)但它将操作更改为 @selector(doStuff),它针对的是一个不存在的方法。

重新连接没有坏处,并且已成为我解决大多数 xib 问题的第一个故障排除步骤。


另一种找到它的确定方法是 grep(来自终端):

[ 22:20 jon@host ~ ]$ grep -RH "saveChanges" /path/to/${PROJECT_DIR}/*

File's Owner Connections

First Responder Connections

关于ios - UIViewController 与键 XXXXX 的键值编码不兼容。 IB 中没有错误的连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7782256/

相关文章:

ios - 添加 SKPhysicsJointLimit 后 SKPhysicsBodies 不会发生碰撞

ios - 将 CIImage 转换为 CGImage 太慢

ios - 如何更改 SKscene 大小

ios - Xcode11 : Unable to install “AppName”

swift - 默认情况下,TabBar 上的选定项目不会突出显示

c++ - iOS - Xcode - OpenCV - findContours 错误

ios - tableviewcell重复uibuttons

ios - 对于键名称或我在代码中给出的任何值,此类不符合键值编码

iphone - Facebook SDK iOS - 授权应用内?

android - 有没有办法检查 React Native 中的互联网连接质量(即 3g vs LTE)?