6

如果我执行带有返回对象的 NSFetchedResultsController 的提取,然后想要清除控制器,即 .fetchedObjects 是一个空数组,是否有可以调用的方法或者我必须执行另一个不返回的提取任何结果?

4

2 回答 2

12

您可以将 fetched results 控制器的 fetch 请求设置为不返回任何内容:

self.fetchedResultsController.fetchRequest.predicate = 
   [NSPredicate  predicateWithValue:NO];
[self.fetchedResultsController performFetch:nil]

现在self.fetchedResultsController.fetchedObjects应该返回一个空数组。

于 2012-12-07T09:49:54.847 回答
0

这个问题没有多大意义。的NSFetchedResultsController数据是获取请求的结果。为了fetchedObjects为空,获取请求必须返回一个空集。这意味着没有满足获取请求的对象。如果有满足请求对象,则fetchedObjects不会为空。您要问的内容相当于询问如何确保提取没有结果。

我什至不确定你为什么想要这个。如果您不再使用 fetch 的结果,只需删除NSFetchedResultsController. 如果您不再想要它的结果,为什么还要保留它呢?

于 2012-12-07T17:49:28.197 回答