2012-01-18 43 views
4

这是我的愚蠢问题。卜我必须打电话每次performFetch后需要reloadData表吗?

[table reloadData]; 

每次后,当我打电话performFetch上NSFetchedResultsController更新表视图?

[self fetchedResultsController] performFetch:nil]; 
+0

我有一个,而同样的想法:)希望有人能给出很好的答案 – Philip007 2012-09-29 21:35:30

回答

1

如果你设置你的UITableViewController作为NSFetchedResultsControllerDelegate,您可以实现controllerDidChangeContent:方法:

- (void)controllerDidChangeContent:(NSFetchedResultsController *)controller { 
    [self.tableView reloadData]; 
} 

看看this answer here at StackOverflow

苹果文档here

编码愉快:)

+3

但是,如果数据已经在coreData存在,你叫'performFetch'那么'controllerDidChangeContent'不会被调用。 – Shizam 2015-12-10 21:37:20

3

如果方法[self fetchedResultsController] performFetch:nil];成果转化为新的数据集,并希望与新的数据加载你的表,你将不得不做的工作。

相关问题