核心数据iPhone - 加载字符串
问题描述:
我在理解如何使用核心数据加载数据时遇到麻烦。这是我有:核心数据iPhone - 加载字符串
实体命名为“人民 名为 '的firstName'(字符串), 'lastName的'(字符串)这个实体的属性, 'isSpecial'(布尔), 'isVerySpecial'(布尔)。
我想得到任何特殊或非常特殊的人的名字和姓氏,以便我可以将这些名称放入标签中,并随时随地喜欢我喜欢的任何名称。我已经玩了取消请求,但没有运气。
任何帮助将不胜感激,谢谢。
答
像这样的东西应该这样做:
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;
答
类似的东西应该做的伎俩:
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];
希望它可以帮助