我想讓一個UIPickerController顯示一些用戶。它的工作原理很輕鬆了,如果我硬編碼了一些示例用戶如下:IOS:從核心數據爲uipicker提取數組
//in viewDidLoad
_users = @[@"Ronald", @"David",
@"Sharon", @"Amir", @"Atul"]; //etc.
不過,我想從核心數據中得出這些用戶。到目前爲止,我已經嘗試了一個簡單的獲取和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不會被調用
更新您的問題並提供有關實際錯誤的詳細信息。 – rmaddy