2012-10-31 39 views
0

我一直在查看存档,但没有找到答案。所以我希望这是明显的,我只是想念。删除了nib文件,但键值连接仍然存在 - NSUnknownKeyException

我有一个iphone应用程序,在过去的2年里,它在各种版本的商店里。我终于对通过笔尖文件管理方向更改感到沮丧。所以我已经完全从项目中删除了我的笔尖,现在我通过代码创建了所有的字段。

我在删除nib文件后,在测试中看到了一个奇怪的崩溃。但我做了一些清理工作,无法重现。所以我已经发货了。我的一小部分用户看到了崩溃的情况。

我相信我能够在我的调试器中重现它并获得了此输出。

2012-10-22 08:08:22.776 ChakraChimePro[60502:16d03] *** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: 
'[<CCProChimeViewController 0x8578100> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key btnRingBowl.' 
*** First throw call stack: 
(0x1f57022 0x1ccacd6 0x1f56ee1 0x2b6022 0x227f6b 0x227edb 0x242d50 0x78871a 0x1f58dea 0x1ec27f1 0x78726e 0x62d1fc 0x62d779 
0x62d99b 0x6490a9 0x648edd 0x6474aa 0x64729e 0x351b 0x564386 0x565274 0x574183 0x574c38 0x568634 0x20eaef5 0x1f2b195 0x1e8fff2 
0x1e8e8da 0x1e8dd84 0x1e8dc9b 0x564c65 0x566626 0x2ef6 0x2e25) 
terminate called throwing an exception(lldb) 

所以我完全删除了我的类属性btnRingBowl。在课堂上没有再提到它。但是我也完全删除了连接到IBOutlet的nib文件。所以不应该再提及它了。 为什么我的二进制文件仍然试图访问它?

我试过删除应用程序并重新安装,问题就消失了。 我已经安装了应用程序商店中相同版本的应用程序,问题就消失了。我无法按需重现问题。但是我可以重现它,并导致我的用户崩溃。

由于我已经完全删除了笔尖和属性。我不知道我还能清理什么。有什么建议么?

我的项目的字符串搜索没有任何地方引用此名称。

感谢,

凯文

+0

你试着重现它与异常断点? – jackslash

+0

您是否尝试过构建当前版本而不是旧版本的xib? – yuf

+0

@jackslash我没有尝试使用异常断点。这是我可以尝试看看是否会给我更多的信息。因为我之前没有使用过这个功能,所以我得仔细研究一下。 – krason

回答

0

遇到同样的确切问题。 NIB/XIB文件很久以前就已经被删除了(在我最初提交之前),并且只有在最近的更新修复程序才会弹出。

我最终从git恢复旧的笔尖文件,并且一切正常。然后删除破损的IB插座,用这些XIB文件重建项目,然后继续。

我不确定恢复旧的nib文件是否会成为您的选择,如果不是,可能会重建另一个相同名称的nib文件,并强制使用新的nib文件重建该项目(以清除它旧的参考文献?)

相关问题