使用来自两个实体的NSFetchedResultsController

时间:2012-09-09 08:25:37

标签: ios core-data nsfetchedresultscontroller

我在UITableView中显示用户的状态消息和对这些消息的评论,并尝试使用Core Data保存数据。 我刚学会了如何在UITableView中使用NSFetchedResultsController,但是大多数使用NSFetchedResultsController的情况只适用于一个实体。 我想将用户的状态消息存储在一个实体中,并将​​注释存储在另一个实体中,并将​​UITableView划分为多个部分:每个状态消息一个部分。每个部分的第一行(UITableViewCell)是状态消息,同一部分的其他行是对该消息的注释:显示如下:

status message 1
 comment
 comment
 ...
 comment
status message 2
 comment
 comment
 ...
 comment
...

我想我必须使用两个NSFetchedResultsControllers - 一个用于状态消息,一个用于注释 - 但无法弄清楚如何设置NSFetchedResultsController以进行注释。 有什么好主意吗?

1 个答案:

答案 0 :(得分:0)

UITableView已有部分和部分标题。如果您在每个部分的节标题中显示状态消息,并且只有表格中的注释查看行,您的任务将变得更加容易。

对于“Comment”,您只需要一个获取的结果控制器,但您必须设置FRC的sectionNameKeyPath:并提供排序描述符,以根据状态消息将FRC的结果分组为多个部分。