Erstellen Sie Gruppenzeilen in NSTableView mit dem von CoreData unterstützten NSArrayController

Angenommen, ich habe eine Reihe von Artikelobjekten im Kerndatenmodell gespeichert. Jeder Artikel enthält ein Attribut für den Lesefortschritt, das angibt, wie viel Artikel vom Benutzer gelesen wurde. Sobald der Benutzer den Artikel vollständig gelesen hat, wird der Artikel als "Gelesen" markiert. Vorher wäre es als "Ungelesen" markiert.

Jetzt habe ich eine NSTableView an einen NSArrayController gebunden, der alle mit CoreData gespeicherten Article-Objekte enthält. Ich möchte, dass alle ungelesenen Artikel in einer "Ungelesenen" Gruppe und alle gelesenen Artikel in der "Gelesenen" Gruppe angezeigt werden.

Ich kenne die Methode

- (BOOL)tableView:(NSTableView *)tableView isGroupRow:(NSInteger)row

im NSTableViewDelegate. Dies setzt jedoch voraus, dass es innerhalb des NSArrayControllers tatsächliche Zeilen geben muss, die "Read" und "Unread" sagen und in die Gruppe hochgestuft werden. Wie gehe ich vor, wenn der NSArrayController Artikelobjekte enthält, die aus CoreData abgerufen wurden?

NB: Dies ist meine erste Frage hier, und ich bin neu bei Cocoa, bitte schont mich :)

Antworten auf die Frage(2)

Ihre Antwort auf die Frage