Базовые данные NSFetchedResultController не обновляются при изменении объекта? - PullRequest
0 голосов
/ 18 апреля 2011

У меня есть NSFetchedResultController с этим набором предикатов:

NSPredicate* pred = [NSPredicate predicateWithFormat:@"author != %@ && deleted != %@", [NSNumber numberWithLongLong:0],[NSNumber numberWithBool:YES]];

При запуске фильтр фильтруется, и я получаю обратный вызов делегата и список обновлений в порядке, если объекты добавляются или удаляются.

Но если я изменю «удаленное» поле, набор NSFetchedResultController НЕ будет обновлен, и при этом я не получу обратный вызов.

Хотя фактический объект в NSFetchedResultController обновляется, если я выполняю «reloadData» в моей таблице и проверяю значение «удалено», оно фактически устанавливается в YES.

Почему он не исчезает из NSFetchedResultController?

Это ожидаемое поведение? Или что я могу делать не так?

1 Ответ

0 голосов
/ 18 апреля 2011

Я думаю, я решил это ...

Оказывается, я действительно получаю обратный вызов ("didChangeObject"), и теперь я проверяю здесь значение "удалено" и вручную удаляю его из NSFetchedResultController, если значение равно ДА.

Кажется, работает, но я все еще ожидал, что это будет автоматически.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...