我迭代通过文本的阵列,随着每次迭代我:如何在不使用insertRowsAtIndexPaths的情况下加载fetchResultsController?
- 创建使用initWithEntity管理对象:insertIntoManagedObjectContext
- 解析文本
- 确定显示顺序
随着新创建的对象以tableview结尾。
因为fetchResultsController的超爽免费功能,如insertIntoManagedObjectContext被称为细胞得到自动插入的tableview。
的问题是存在在处理每个新对象(〜20毫秒)有轻微的延迟和文本的行的顺序比正在更新的tableview中被不同地排序。这会导致屏幕闪烁,因为所有的单元格都显示出它们的显示顺序,而其他单元格快速插入它们后面。 (如果不清楚,我可以发布这种效果的视频,但我不认为这很难描述它。)
采用文本行并首先将它们解析为另一个数组是合乎逻辑的,然后插入阵列到商务部,但我不能因为这些管理对象,我不能只是ALLOC他们 - 我要打电话initWithEntity:insertIntoManagedObjectContext,这反过来会自动将细胞进入的tableview。
取出insertRowsAtIndexPaths:withRowAnimation在didChangeObject方法,只是调用reloadData当迭代结束没有工作。 (应该吧?)
我只是想表不更新已创建的所有对象后,直到。 我看不出用fetchResultsController做到这一点的方法,即使它没有一个也是微不足道的。由于经常出现我在SO-上的问题,我在这里丢失了什么?
将fetchController设置为nil很好。如果不是那样的话,我会在我的第一个Hello World应用程序中... –