当我使用以下代码更新实体中的 transient 属性(并且我猜是其他属性)时
[passedObject setValue:distanceNumber forKey:@"distance"];
NSFetchedResultsController
从获取结果中删除对象。我想我必须做
[fetchedresultscontroller performFetch:&error]
再次进行提取,但没有任何 react ,对象不会回来提取结果。我错过了什么?如何在运行时更新对象而不从
NSFetchResultController
的提取中删除?谢谢
最佳答案
获取的标准是什么?你使用谓词吗?最有可能的是,您对实体所做的更改使其与获取谓词不匹配。当您进行更改然后保存时,这将导致托管对象上下文通知当前获取的结果 Controller 上下文已更改。然后,获取的结果 Controller 检查所有更改并采取适当的措施。它将删除不再符合原始获取条件的对象。
如果您显示用于进行原始提取的代码,那么有人可能会准确地告诉您问题出在哪里。
关于ios - NSFetchedResultsController 不更新更新 NSManagedObjects,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9481946/