加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

xcode – 错误:由于未捕获的异常’NSUnknownKeyException’而终

发布时间:2020-12-14 18:58:09 所属栏目:百科 来源:网络整理
导读:完整错误是:由于未捕获的异常’NSUnknownKeyException’而终止应用程序,原因:'[setValue:forUndefinedKey:]:此类不是密钥的密钥值编码兼容. 所以我一直在尝试其他人一直在说类似问题.我已经尝试摆脱项目中对landscapeView的每一次提及,包括ViewControll
完整错误是:由于未捕获的异常’NSUnknownKeyException’而终止应用程序,原因:'[setValue:forUndefinedKey:]:此类不是密钥的密钥值编码兼容.

所以我一直在尝试其他人一直在说类似问题.我已经尝试摆脱项目中对landscapeView的每一次提及,包括ViewController_iPhone.xib中FIle所有者中的Connections,然后我通过在超类ViewController中创建插座来开始新鲜事(因为我想使用landscapeView和portraitView for iPad另外)然后我将ViewController_iPhone.xib和ViewController_iPad.xib中的连接分别设置为每个名为Landscape的UIView,我仍然会收到此错误.

我刚刚开始进行应用程序开发,所以我正在尝试为支持iPhone和iPad上所有方向的应用程序制作模板.谢谢你的帮助

编辑:这是我的所有app委托h和m和main.m:I am getting the Applications are expected to have a root view controller at the end of application launch error的链接

编辑2:所以我也尝试使viewView成为ViewController的一个属性,我在ViewController.m中创建了一个setter方法,但它仍然有同样的问题.

解决方法

我发现这个错误发生的最常见的地方是当你从一个不是xib所有者的类中的xib实例化一个视图时.

我的意思是你可能会调用类似的东西:

[[NSBundle mainBundle] loadNibNamed:@"MyView" owner:self options:nil];

您正在更改所有者,因此您必须确保自我引用的类具有“MyView”所需的所有IBOutlet属性.通常这是在Interface Builder中完成的,但在这种情况下,您将以编程方式设置所有者,这意味着您无法在IB中建立连接.当IBOutlets不存在时,应用程序会尝试建立这些连接并失败,从而给出您看到的错误.

我的建议(不知道你到目前为止给出的任何信息)是检查你是否在没有正确的IBOutlets的情况下进行了这个调用.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读