2012-01-09 64 views
0

我在理解如何使用核心數據加載數據時遇到麻煩。這是我有:核心數據iPhone - 加載字符串

實體命名爲「人民 名爲 '的firstName'(字符串), 'lastName的'(字符串)這個實體的屬性, 'isSpecial'(布爾), 'isVerySpecial'(布爾)。

我想得到任何特殊或非常特殊的人的名字和姓氏,以便我可以將這些名稱放入標籤中,並隨時隨地喜歡我喜歡的任何名稱。我已經玩了取消請求,但沒有運氣。

任何幫助將不勝感激,謝謝。

回答

2

像這樣的東西應該這樣做:

NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init]; 
NSEntityDescription *weightEntity = [NSEntityDescription entityForName:@"Person" inManagedObjectContext:[[yourCoreDataManager sharedInstance] managedObjectContext]]; 
[fetchRequest setEntity:weightEntity]; 
[fetchRequest setPredicate:[NSPredicate predicateWithFormat:@"isSpecial == %@ OR isVerySpecial == %@", [NSNumber numberWithBool:YES], [NSNumber numberWithBool:YES]]]; 

NSError *error = nil; 
NSArray *result = [[yourCoreDataManager sharedInstance] managedObjectContext] executeFetchRequest:fetchRequest error:&error]; 

然後:

Person *person = [result objectAtIndex:0]; 
NSString *lastName = person.lastName; 
NSString *firstName = person.firstName; 
0

類似的東西應該做的伎倆:

self.fetchedResultsController = [Person fetchAllSortedBy:@"lastName" ascending:YES withPredicate:[NSPredicate predicateWithFormat:@"isSpecial == %@ OR isVerySpecial == %@", [NSNumber numberWithBool:YES], [NSNumber numberWithBool:YES]] groupBy:nil delegate:self]; 

那麼你會得到你的fetchedResultsController人員組成的數組。爲了得到它使用簡單

NSMutableArray *yourArray = [NSMutableArray arrayWithArray: self.fetchedResultsController.fetchedObjects]; 

希望它可以幫助