核心数据NSFetchedResultController没有更新对象更改?

时间:2011-04-18 12:10:58

标签: core-data nsfetchedresultscontroller

我有一个带有此谓词集的NSFetchedResultController:

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

它在启动时过滤得很好,如果添加或删除对象,我会得到一个委托回调和列表更新。

但是,如果我更改“已删除”字段,NSFetchedResultController集不会更新,也不会得到回调。

但是,更新了NSFetchedResultController中的实际对象,如果我在表上执行“reloadData”并检查“已删除”的值,则实际上设置为YES。

为什么它不会从NSFetchedResultController中消失?

这是预期的行为吗? 或者我可能做错了什么?

1 个答案:

答案 0 :(得分:0)

我想我解决了......

原来我实际上得到了回调(“didChangeObject”),我现在在这里检查“已删除”的值,如果值为YES,则手动将其从NSFetchedResultController中删除。

似乎工作,但我仍然希望它是自动的。