这可能是一个简单的问题,但它让我难住了。
背景:我有一个非常简单的 UITableView,它链接到 FetchedResultsController。基本上,该表为 FetchedResultsController 中的每一行填充一行。
问题陈述:如果我点击我的应用程序上的一个按钮来查看所有记录,应用程序会因错误而崩溃
NSRangeException',原因:' * -[_PFBatchFaultingArray objectAtIndex:]: 索引 (2) 越界 (2)
但是,如果我单击另一个显示添加数据的屏幕的按钮,请取消此屏幕而不保存任何内容,然后返回查看所有屏幕,该屏幕可以正常工作。
我什至尝试使用 NSLog 语句进行调试,您可以在下面看到
2012-06-01 23:37:01.345 TC[35258:fb03] sections : 1
2012-06-01 23:37:43.154 TC[35258:fb03] rows 3
2012-06-01 23:39:29.174 TC[35258:fb03] indexpath <NSIndexPath 0x91180f0> 2 indexes [0, 0]
2012-06-01 23:41:29.041 TC[35258:fb03] indexpath <NSIndexPath 0x903e770> 2 indexes [0, 1]
2012-06-01 23:41:44.015 TC[35258:fb03] indexpath <NSIndexPath 0x904afb0> 2 indexes [0, 2]
2012-06-01 23:41:46.598 TC[35258:fb03] *** Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[_PFBatchFaultingArray objectAtIndex:]: index (2) beyond bounds (2)'
这让我很困惑 - 当明显有 3 行时,为什么它会在第三行抛出错误?非常感谢您的帮助和洞察力。谢谢你