Reflect Änderungen an Objekten in einer Beziehung im übergeordneten Objekt mit NSFetchedResultsController

Ich habe zwei Entitäten Ereignis und Zeit. Die Ereignisentität hat eine 1 zu viele Beziehung zu Zeitentitäten, da jedes Ereignis mehrmals ausgeführt werden kann. Jetzt möchte ich alle Ereignisse chronologisch in einer Tabellenansicht anzeigen. Deshalb habe ich einen fetchedResultsController eingerichtet, um alle Zeitobjekte abzurufen, sie nach der Startzeit zu sortieren und die Ereignisinformationen unter Verwendung der Beziehung zum Ereignisobjekt anzuzeigen. So weit, ist es gut. Wenn der Benutzer nun einen Eintrag in der Tabelle anklickt, übergebe ich ein Ereignisobjekt an den detailViewController, in dem das Ereignis bearbeitet werden kann.

Das Problem ist, dass jetzt nur die Ereignisentität als aktualisiert markiert ist. Ich fand dies heraus, indem ich das userInfo-Verzeichnis der NSManagedObjectDidChange-Benachrichtigung ansah. Infolgedessen werden die Delegate-Methoden auf dem FRC nicht ausgelöst, da keine Zeitobjekte geändert wurden.

Wie kann ich ein Zeitobjekt manuell als geändert markieren, damit der FRC die Änderungen erkennt und die Zellen entsprechend aktualisiert? Ich habe versucht, die KVO-Methoden zu feuernwillChangeValueForKey unddidChangeValueForKey aber es hat bisher nicht geklappt.

ielen Dank Thom

Antworten auf die Frage(6)

Ihre Antwort auf die Frage