iphone SDK:核心数据,如何在NSFetchedResultsController中对部分进行排序?

时间:2010-12-03 02:59:04

标签: core-data ios4 nsfetchedresultscontroller

我有一个核心数据应用程序,它使用sectionNameKeyPath“group.name”和fetchRequest,以便按组实体的name属性对结果进行分组。我是按group.name分组的,但是我想通过group.name之外的其他东西排序这些部分。根据NSFetchedResultsController文档:

  

如果控制器生成部分,   数组中的第一个排序描述符   用于将对象分组   段;它的关键必须是   与sectionNameKeyPath或。相同   必须使用其密钥进行相对排序   使用sectionNameKeyPath匹配。

这意味着必须按照分组的相同顺序对这些部分进行排序。尽管有文档,但在iOS 4.2之前,您可以在不指定sectionNameKeyPath作为第一个允许您对部分进行排序的排序描述符的情况下离开,但是不再。

在NSFetechedResultsController中对部分进行排序的最佳方法是什么?例如,我希望我的部分按“group.name”分组,但按“group.timestamp”排序。

1 个答案:

答案 0 :(得分:0)

来自NSFetchedResultsController docs:

  

如果是,则创建此类的子类   你想自定义创建   部分和索引标题。您   覆盖   sectionIndexTitleForSectionName:if   你想要节索引标题   资本化以外的东西   部分名称的第一个字母。您   如果你,覆盖sectionIndexTitles   希望索引标题是什么   除了由...创建的数组   调用   sectionIndexTitleForSectionName:on   所有已知部分。