iPhone:从根据索引排序的核心数据中获取数据

时间:2012-07-11 15:15:20

标签: iphone ios core-data

从根据索引

排序的核心数据中获取数据

在核心数据实体中,我有一个具有索引(1,2,3,4,5,6,7,......)

的字段索引

我想根据该索引从核心数据中获取数据,但我无法做到这一点

我无法正确设置sortdescriptor

任何人都可以帮助您处理一些代码段

2 个答案:

答案 0 :(得分:2)

告诉获取请求对数据进行排序......

NSFetchRequest *fetchRequest = [NSFetchRequest fetchRequestWithEntityName:@"myEntity"];
NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"index" ascending:YES];
fetchRequest.sortDescriptors = [NSArray arrayWithObject:sortDescriptor];

现在,当您获取时,数据将根据索引字段进行排序。

答案 1 :(得分:0)

/*!
@param <NSManagedObject> array 
@return <NSManagedObject> sortedarray
*/
+ (NSArray *) sortManagedObjectArrayByObjectID:(NSArray *) array {

    NSArray *compareResult = [array sortedArrayUsingComparator:^NSComparisonResult(NSManagedObject *obj1, NSManagedObject *obj2) {

        NSString *s = [obj1.objectID.URIRepresentation lastPathComponent];
        NSString *r = [obj2.objectID.URIRepresentation lastPathComponent];
        return [s compare:r];

    }];

    return compareResult;

}