sigabrt on filteredArrayUsingPredicate

时间:2012-04-25 04:56:24

标签: xcode predicate sigabrt

我是一个菜鸟并尝试将一本书中的示例转换为我可以使用的应用程序。

示例应用程序是联系人应用程序的修改版本,它可以正常运行。

我做了一些进一步的修改,搜索不再有效。它在下面的行中表示赞美

self.filteredAnswercards = [flattenedArray
                            filteredArrayUsingPredicate:predicate];

我很难过。 我的头撞在我的键盘上是血腥的。

非常感谢任何帮助。

感谢。

3 个答案:

答案 0 :(得分:3)

我的建议是将崩溃的行包装在@ try / @ catch块中,并在catch中记录异常和异常callStackSymbols方法的结果。

对于记录,4.x版本的Xcode问题的部分原因是它们比3.x版本更糟糕的是告诉你哪里来自异常。因此,熟悉使程序或调试器告诉您需要知道的技巧非常重要。

答案 1 :(得分:0)

很难说没有看到更多代码。 Sigabort通常意味着抛出异常。您可以在objc_exception_throw中设置一个断点来获得一个有助于突出原因的回溯。

如果您没有获得上述信息的新信息,其他人则表示完全重新启动计算机可能有所帮助......但我没有遇到可以验证这一点的情况。

----根据评论编辑-----

听起来filteredAnswercards是零,肯定会导致Sigabort。正确地分配该数组,你应该好好去。

答案 2 :(得分:0)

我猜是predicate是零。你在哪里分配的?或者你从未分配过它?