0

我一直在浏览档案,但没有找到可以回答这个问题的问题。所以我希望这很明显,我只是想念。

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

删除 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 文件。所以不应该再提及它了。为什么我的二进制文件仍在尝试访问它?

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

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

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

谢谢,

凯文

4

1 回答 1

0

遇到了同样的问题。NIB/XIB 文件很久以前就被删除了(在我初次提交之前),只有最近的更新修复才会弹出这个窗口。

我最终从 git 恢复了旧的 nib 文件,一切正常。然后删除损坏的 IB Outlets,使用这些 XIB 文件重建项目,然后继续。

我不确定恢复旧的 nib 文件是否适合您,如果不是,也许重建另一个同名的 nib 文件,并使用新的 nib 文件强制重建项目(因此它会清除旧的引用?)

于 2013-05-13T18:35:56.150 回答