Отражать изменения в объектах во взаимосвязи в родительском объекте с помощью NSFetchedResultsController

У меня есть две сущности: событие и время. Сущность события имеет отношение от 1 ко многим к сущностям времени, поскольку каждое событие может выполняться несколько раз. Теперь я хочу отображать все события в хронологическом порядке в tableView. Поэтому я настроил fetchedResultsController для извлечения всех временных объектов, сортировки их по времени начала и отображения информации о событии, используя связь с объектом события. Все идет нормально. Но теперь, если пользователь помещает запись в таблицу, я передаю объект события в detailViewController, где событие можно редактировать.

Проблема в том, что теперь только объект события помечен как обновленный. Я выяснил это, просмотрев каталог userInfo в уведомлении NSManagedObjectDidChange. Как следствие, методы делегата в FRC не запускаются, поскольку объекты времени не были изменены.

Как я могу вручную отметить объект времени как измененный, чтобы FRC распознал изменения и соответствующим образом обновил ячейки? Я попытался активировать методы KVO willChangeValueForKey и didChangeValueForKey , но пока это не сработало.

Большое спасибо Томас

13
задан GorillaPatch 2 April 2011 в 16:32
поделиться