現在、CoreDataを使用してレシピブックに取り組んでいます。CoreDataを使用するのは初めてで、これまでのところ機能していますが、iPadの分割ビューで使用するのに問題があります。
これが私のオブジェクトモデルです:http: //i621.photobucket.com/albums/tt295/Naosu_FFXI/ObjectModel.png
私のアプリでは、手順と材料が詳細ビューの2つの表に表示されます。レシピが1つあると、期待どおりに機能します。ただし、両方のテーブルのNSFetchedResultsControllersは、選択したレシピに関係なく、すべての情報を取得します。したがって、NSPredicateを使用することが最も明白な選択のようです。
NSPredicateのコードスニペットは次のとおりです。
filteredIngredientsArray = [[NSMutableArray alloc] init];
.... snip ....
//---------- Filtering the ingredients by name ----------
NSError *error = nil;
NSPredicate *ingredientsPredicate = [NSPredicate predicateWithFormat:@"recipe.recipeName == '%@'", selectedName];
[fetchRequest setPredicate:ingredientsPredicate];
NSLog(@"Filtering the INGREDIENTS with this: %@", selectedName);
NSArray *loadedIngredients = [_managedObjectContext executeFetchRequest:fetchRequest error:&error];
filteredIngredientsArray = [[NSMutableArray alloc] initWithArray:loadedIngredients];
[self.ingredientTable reloadData];
これを使用すると、テーブルが満杯になることはありません。そのため、確実に機能していますが、希望どおりに機能していません。私のNSLogは、selectedName変数の値が、ユーザーがタップしたレシピの名前であることを示しています。
これは私を壁に押し上げてきました、そしてそれは本当に私を悩ませます、それでどんなフィードバック/助けもいただければ幸いです。