【问题标题】:Coredata and NSOrderedSet - how is the order of the set defined?Coredata 和 NSOrderedSet - 如何定义集合的顺序?
【发布时间】:2012-02-29 10:47:56
【问题描述】:

我查看了现有文档,但找不到任何可以证实我所看到行为的内容。

从 iOS 5 开始,可以对 CoreData 关系进行排序,在这种情况下,返回的对象是一个 NSOrderedSet。

任何人都可以确认集合中对象的顺序与创建它们的顺序相匹配吗?

干杯, 罗格

【问题讨论】:

标签: objective-c ios core-data nsorderedset


【解决方案1】:

如果您不使用sortedArrayUsingComparator: 自己对顺序进行排序,那么我相信对象会按照添加它们的顺序进行排序。

您也可以使用 – insertObject:atIndex: 手动设置顺序。

https://developer.apple.com/library/mac/#documentation/Foundation/Reference/NSMutableOrderedSet_Class/Reference/Reference.html#//apple_ref/occ/cl/NSMutableOrderedSet

【讨论】:

    【解决方案2】:

    您应该使用旧 NSOrderedSet 中的数据创建一个 NSMutabledOrderedSet,进行更改并再次将数据移回:

    NSMutableOrderedSet *orderedSet = [[NSMutableOrderedSet alloc] initWithSet:[self.myOrderedSet set]];
    [orderedSet insertObject:newObject atIndex:index];
    self.myOrderedSet = orderedSet;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多