NSFetchedResultsController“乱序部分名称”
Posted
技术标签:
【中文标题】NSFetchedResultsController“乱序部分名称”【英文标题】:NSFetchedResultsController "out of order section name' 【发布时间】:2012-10-09 18:04:51 【问题描述】:我正在使用MagicalRecord
来获取我的数据。在我的应用程序中,我有一个联系人列表,这些联系人被分组到联系人组中。我正在分组UITableView
中显示这些联系人组。
例如,我有以下(这是我所期望的):
Default Groups // section header
[Everyone] // cell row
[Favourites] // cell row
My Group // section header
[Coworkers] // cell row
有时我的小组会搞混:
Default Groups // section header
[Everyone] // cell row
[Coworkers] // cell row
My Group // section header
[Favourites] // cell row
我用来排序和分组的每个联系人组名称和组类型。组类型是整数。当我检查他们的属性时,他们确实有正确的组类型。
我的 FRC 如下所示:
fetchedResultsController = [ContactGroup fetchAllSortedBy:@"groupName"
ascending:YES
withPredicate:nil
groupBy:@"groupType"
delegate:self];
我看到以下错误:
CoreData: error: (NSFetchedResultsController) The fetched object at index 2 has an out of order section name '1. Objects must be sorted by section name'
+[MagicalRecord(ErrorHandling) defaultErrorHandler:](0x2eefb8) Error: The fetched object at index 2 has an out of order section name '1. Objects must be sorted by section name'
+[MagicalRecord(ErrorHandling) defaultErrorHandler:](0x2eefb8) Error Message: The operation couldn’t be completed. (Cocoa error 134060.)
+[MagicalRecord(ErrorHandling) defaultErrorHandler:](0x2eefb8) Error Domain: NSCocoaErrorDomain
+[MagicalRecord(ErrorHandling) defaultErrorHandler:](0x2eefb8) Recovery Suggestion: (null)
如果我需要提供更多详细信息,请告诉我,此时我有点难过,不能 100% 确定该怎么做。
【问题讨论】:
【参考方案1】:没用过MagicalRecord,可以设置多个排序条件吗?
我假设它使用 groupBy: 作为部分名称,所以在这种情况下,我将有两个排序描述符,一个用于“groupType”,第二个用于“groupName”。
这将按照正确的顺序对部分进行排序,然后按照正确的顺序对部分内的所有内容进行排序。
【讨论】:
以上是关于NSFetchedResultsController“乱序部分名称”的主要内容,如果未能解决你的问题,请参考以下文章