手动更新UITableView(替换NSFetchedResultsController逻辑)

手动更新UITableView(替换NSFetchedResultsController逻辑),uitableview,fetch,Uitableview,Fetch,i使用队列和结果控制器的组合来更新和显示一些coredata对象。我遇到了一些异常和问题(参见此线程)。经过长时间的研究,我发现问题出在NSFetchedResultsController上,于是我决定为uitableview编写自己的更新逻辑 我的新策略是: -当我的视图加载时,我将核心数据中的所有对象提取到一个数组中并显示它们 -20秒后,我尝试从web加载新数据并更新核心数据(在第二个线程/或NSO操作中),该线程使用自己的objectcontext。。。我的主上下文将忽略任何更改! -之

i使用队列和结果控制器的组合来更新和显示一些coredata对象。我遇到了一些异常和问题(参见此线程)。经过长时间的研究,我发现问题出在NSFetchedResultsController上,于是我决定为uitableview编写自己的更新逻辑

我的新策略是: -当我的视图加载时,我将核心数据中的所有对象提取到一个数组中并显示它们 -20秒后,我尝试从web加载新数据并更新核心数据(在第二个线程/或NSO操作中),该线程使用自己的objectcontext。。。我的主上下文将忽略任何更改! -之后,我再次获取对象,但是在临时数组中 -现在我需要更新我的uitableview,但我不知道如何。。。我必须比较两个数组并更新、删除或插入单元格

重要的是我有这个漂亮的动画插入和删除。我的案例中所有对象都只在一个部分!!但我可能有一个视图,其中“汽车”和“酒店”=>2个部分,但对象不同(2个数据源阵列)

有人能给我一个更新uitableview的好例子吗

我用过:

-(void)控制器:(NSFetchedResultsController*)控制器didChangeObject:(id)索引路径中的一个对象:(NSIndexPath*)变更类型的indexPath:(NSFetchedResultsChangeType)类型newIndexPath:(NSIndexPath*)newIndexPath
我需要替换
NSFetchedResultsController
逻辑


多谢各位

这个答案可能太简单了,但我已经使用了

[self.tableView reloadData];  

并将其插入-(void)viewwillappeage:(BOOL)动画方法。

viewwillappeage只调用一次。。。和reloadData不会插入和删除动画:(