在NSFetchRequest
中执行cellforRowAtIndexPath
似乎有点慢。
你是如何对待它的?在viewDidLoad
中执行它是否更具内存/时间效率,将结果缓存到字典中,并在cellForRowAtIndexPath
中使用它?
答案 0 :(得分:2)
由于表现原因,这是一个坏主意,正如@Paulw11在评论中提到的那样。另外,您将执行获取请求的次数超过实际需要的次数(在来回滚动表视图时),因为每次重复使用单元格时都会调用cellForRowAtIndexPath
。
我建议使用NSFetchedResultsController。它专门用于在UITableView
中显示核心数据记录。它允许批量提取(不提取所有对象,但只提取需要显示的对象)。此外,您还可以轻松跟踪模型中的更改。