2013-10-24 51 views
0

當我使用CoreData數據庫時,我意識到數據沒有按順序存儲。例如,如果我存儲「項目1」,「項目2」,「項目3」,「項目4」,然後在視圖控制器中獲取它們,我得到的訂單是2, 3, 4, 1。事實證明,由於這些數據的顯示混亂,所以很煩人。如何對數據進行排序,以便它們能夠按順序排列?對CoreData中的數據條目進行排序

+0

這是不相關/在這裏回答:(保留在覈心數據有序列表)[http://stackoverflow.com/questions/8750326/how-can-i-preserve-an-ordered-list-在覈 - 數據] –

回答

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]; 
相關問題