Kerndaten auf dem iPhone lernen. Es scheint nur wenige Beispiele für Kerndaten zu geben, die eine Tabellenansicht mit Abschnitten füllen. Im CoreDataBooks- Beispiel werden Abschnitte verwendet, die jedoch aus vollständigen Zeichenfolgen im Modell generiert werden. Ich möchte die Kerndatentabelle nach dem Anfangsbuchstaben eines Nachnamens, a la Adressbuch, in Abschnitte unterteilen.
Ich könnte hineingehen und für jede Person ein anderes Attribut erstellen, dh einen einzelnen Buchstaben, um als Abteilungsabteilung zu fungieren, aber das scheint klobig.
Hier ist, womit ich anfange ... der Trick scheint zu täuschen sectionNameKeyPath
:
- (NSFetchedResultsController *)fetchedResultsController {
//.........SOME STUFF DELETED
// Edit the sort key as appropriate.
NSSortDescriptor *orderDescriptor = [[NSSortDescriptor alloc] initWithKey:@"personName" ascending:YES];
NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:orderDescriptor, nil];
[fetchRequest setSortDescriptors:sortDescriptors];
// Edit the section name key path and cache name if appropriate.
// nil for section name key path means "no sections".
NSFetchedResultsController *aFetchedResultsController =
[[NSFetchedResultsController alloc] initWithFetchRequest:fetchRequest
managedObjectContext:managedObjectContext
sectionNameKeyPath:@"personName" cacheName:@"Root"];
//....
}
sectionNameKeyPath
wenn Sie Tausende von Datensätzen in der Datenbank haben.