次のように NSFetchedResultsController を設定しました。
self.fetchedResultsController = [[NSFetchedResultsController alloc] initWithFetchRequest:request managedObjectContext:self.contactsDatabase.managedObjectContext sectionNameKeyPath:@"nameInitial" cacheName:nil];
アプリを初めて実行すると、以下の NSFetchedResultsController デリゲートが呼び出されます。
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
{
NSLog([[self.fetchedResultsController fetchedObjects] description]);
NSLog([NSString stringWithFormat:@"Number of Sections = %i", [[self.fetchedResultsController sections] count]]);
return [[self.fetchedResultsController sections] count];
}
配列の説明の完全な NSLog を取得しているため、フェッチ要求は正常に機能しているようです。
ただし、このメソッドはセクション数 = 0 を返すため、空のテーブル ビューが表示されます。
アプリを閉じてもう一度実行すると、正常に動作します。
何か案は?