fetchRequestをフィルタリングしようとしています。
結果がNSArrayにロードされる時点です。
ただし、配列を解析して個々のアイテムを引き出す必要があります。現在、それらは1つのオブジェクトであるかのように見えます。
この点に到達するために使用しているコードは次のとおりです。
NSFetchRequest *request = [[NSFetchRequest alloc] init];
NSManagedObjectContext *moc = coreDataController.mainThreadContext;
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Category" inManagedObjectContext:moc];
[request setEntity:entity];
// Order the events by name.
NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"name" ascending:YES];
[request setSortDescriptors:@[sortDescriptor]];
// Execute the fetch -- create a mutable copy of the result.
NSError *error = nil;
NSArray *categories = [[moc executeFetchRequest:request error:&error] mutableCopy];
if (categories == nil) {
NSLog(@"bugger");
}
NSObject *value = nil;
value = [categories valueForKeyPath:@"name"];
これにより、次のようになります。
value = (
)
[DetailViewController loadPickerArray]
[AppDelegate loadPickerArray]
value = (
"Cat Two",
"Cat Three",
"Cat One",
"Cat Four"
)
また、これが最初に実行されたとき、結果がなかったことに注意してください。私はそれを約50%の確率で得ます。
助けてくれてありがとう。