0

我的应用程序中有一个工作流程,用户将在其中构建复合过滤器,然后按下按钮查看过滤器的结果。

在构建过滤器的屏幕中,他们可以从字段列表中进行选择并设置值应该是什么。还有一个UILabel显示有多少结果与当前选择的过滤器匹配。

我使用 NSFetchedResultsController 来更轻松地获取计数和更改谓词等...

当用户按下“下一步”(或任何标记的按钮)时,他们将查看包含这些结果的 TableView。

NSFetchedResultsController将in 传递给 tableViewController是不好的做法吗?

或者我应该只传递构建新的NSFetchedResultsController(即NSPredicate)所需的信息。

我可以这样做,只是不确定这两种方法是否有任何优点/缺点?

4

2 回答 2

1

NSFetchedResultsController 上有一个委托。在传递 NSFetchedResultsController 时,您必须分配一个新的委托,并且当您根据按下该按钮移除您呈现的视图控制器时,您必须再次分配该委托。还要记住,当您更改 NSFetchedResultsController 的 fetch 请求的谓词时,您正在执行另一个 fetch。基本上,您正在使您的架构复杂化,而基本上一无所获。创建一个新的 NSFetchedResultsController 对象。

于 2012-10-09T13:58:58.130 回答
1

NSFetchedResultsController 确实是您对 tableView 所需要的。

于 2012-10-09T13:59:39.107 回答