【问题标题】:NSFetchedResultsController ERROR: The fetched object at index 248 has an out of order section nameNSFetchedResultsController 错误:在索引 248 处获取的对象的部分名称乱序
【发布时间】:2011-03-09 07:03:08
【问题描述】:

在这里尝试解决方案: https://stackoverflow.com/questions/1741093?tab=newest#tab-top

我正在使用瞬态属性和类别解决方案,它似乎一直在工作,直到索引字符开始再次环绕到 A,不知道为什么这样做,只是记录类别/瞬态 getter正在返回大写的FirstLetterOfName。

我正在使用 name 属性进行排序,然后将 fetchRequest 上的 sectionNameKeyPath 设置为 uppercaseFirstLetterOfName。

完整的错误是: NSFetchedResultsController 错误:在索引 248 处提取的对象有一个乱序部分名称“Y”。对象必须按部分名称排序'

有什么我可能出错的想法或如何追查问题吗?

【问题讨论】:

    标签: iphone-sdk-3.0 nsfetchedresultscontroller


    【解决方案1】:

    我发现了问题。 因为排序会产生大写字母和小写字母,我想但 indextitles 不是我得到的乱序索引/部分名称:

    刚刚添加到 fetch 选择器:@selector(caseInsensitiveCompare:)

    现在是这样: NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"name" 升序:YES 选择器:@selector(caseInsensitiveCompare:)];

    并且有效 千斤顶!

    【讨论】:

    • 遇到了同样的问题。使用 caseInsensitiveCompare 确实有帮助,谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多