0

当我使用 CoreData 数据库时,我意识到数据没有按顺序存储。例如,如果我存储“项目 1”、“项目 2”、“项目 3”、“项目 4”,然后在视图控制器中取回它们,我得到的顺序是2, 3, 4, 1. 事实证明这很烦人,因为这些数据的显示是混乱的。我如何对数据进行排序,以便它们可以按顺序出现?

4

2 回答 2

0

下面是使用 NSSortDescriptor 获取的示例。

 NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
 NSManagedObjectContext *context = [(AppDelegate *)[[UIApplication sharedApplication] delegate] managedObjectContext];
 NSEntityDescription *entity = [NSEntityDescription entityForName:@"CaseType" inManagedObjectContext:context];
 [fetchRequest setEntity:entity];

 NSSortDescriptor *sortDesc = [NSSortDescriptor sortDescriptorWithKey:@"caseType" ascending:YES];
 [fetchRequest setSortDescriptors:[NSArray arrayWithObject:sortDesc]];

 NSPredicate *activePred = [NSPredicate predicateWithFormat:@"active == 1"];
 [fetchRequest activePred];

 NSError *error;
 NSArray *items = [context executeFetchRequest:fetchRequest error:&error];
于 2013-10-24T14:36:13.393 回答