【发布时间】:2016-04-24 20:14:59
【问题描述】:
我正在尝试让 UIPickerController 显示一些用户。如果我对一些示例用户进行硬编码,如下所示:
//in viewDidLoad
_users = @[@"Ronald", @"David",
@"Sharon", @"Amir", @"Atul"]; //etc.
但是,我想从核心数据中提取这些用户。到目前为止,我已经尝试了一个简单的 fetch 和 nsfetchedresults 控制器,但似乎没有任何效果。从核心数据中获取数组的首选方式是什么。
//fetchrequest
- (id) getUsers{
NSFetchRequest *fetchRequest = [NSFetchRequest
fetchRequestWithEntityName:@"User"];
fetchRequest.resultType = NSDictionaryResultType;
NSError *error = nil;
self.managedObjectContext = [chModel sharedInstance].managedObjectContext;
NSArray *results = [self.managedObjectContext executeFetchRequest:fetchRequest
error:&error];
return results;
}
//this throws an error at
- (NSString *)pickerView:(UIPickerView *)pickerView
titleForRow:(NSInteger)row
forComponent:(NSInteger)component
{
NSLog(@"in titleforrow");
return _users[row];//error here. also error if I substitute [0]
}
//when I try
_users = [self.fetchedResultsController fetchedObjects];
}
frc 永远不会被调用
【问题讨论】:
-
用有关实际错误的详细信息更新您的问题。
标签: ios core-data nsarray uipickerview