Core Data NSFetchedResultsController的比较函数

时间:2012-06-07 00:20:33

标签: core-data nsfetchedresultscontroller

我使用NSFetchedResultsController将我的数据划分为单独的部分。我给出的主要sortDescriptor是:

  

NSSortDescriptor * sortDescriptorSectionLetter = [[NSSortDescriptor alloc] initWithKey:@“sectionLetter”ascending:YES selector:@selector(localizedCompare :)];

现在我的sectionLetter的默认值为“#”。当tableView被分区并显示时,它会将'#'部分放在表格的顶部。我希望它显示在列表的底部(就像Contacts应用程序那样)。但我无法弄清楚如何实现这一目标。

我也尝试过不同类型的字符而不是#,比如 和〜,但这似乎也不起作用。根据核心数据编程指南,我无法在此处传递自定义比较功能。

所以我不确定我的选择是什么(除了自己进行切片并失去所有FRC委托的好处,用动画重新加载我的tableviews)。有什么好主意吗?

1 个答案:

答案 0 :(得分:0)

请注意NSFetchedResultsController {{1}}中的注释:

  

子类注释
  如果要自定义节和索引标题的创建,则可以创建此类的子类。您可以覆盖sectionIndexTitleForSectionName:如果您希望节索引标题不是节名称的大写首字母。如果希望索引标题不是通过在所有已知部分上调用sectionIndexTitleForSectionName:创建的数组,则覆盖sectionIndexTitles。