在使用获取结果控制器时,我需要找到一种方法来保持服务器给出的排序顺序,即使用于在服务器中排序的参数不会与数据一起返回。
每一组对象都可以以不同的方式排序,在具有正确排序顺序的数组中作为json返回。
我将它们放在包含元数据的实体所包含的不同有序集合中,并按照所有项中相同的参数进行排序,但我的有序集中的顺序无论如何都不会用于排序。
目标iOS版本为6.1-7.0
我的提取请求谓词是:
fetchRequest.predicate = [NSPredicate predicateWithFormat:@"SELF in %@.items", itemList];,其中的项是一个@property (nonatomic, retain) NSOrderedSet *items;,因此谓词明确地引用了有序集。
是否有更好的谓词和排序描述符用于处理有序集?
有什么更好的方法来构造我的模型吗?
谢谢!
发布于 2013-12-09 07:49:41
我决定放弃使用有序的集合。他们不是很灵活,你会遇到像你一直都有的问题。(一个问题是,它们既不是从NSArray派生的,也不是从NSSet派生的,因此一些标准操作变得非常困难。)
我建议向您的实体引入一个或多个position属性,这些实体需要按照特定的顺序排列。数据一进来就可以存储这个。其余的都是微不足道的。
https://stackoverflow.com/questions/20465468
复制相似问题