2

有什么方法(或技巧)可以在不触发和委托方法的情况下修改NSManagedObject委托人当前持有的内容?NSFetchedResultsControllerdidChangeObject:controllerWillChangeContent:

例如, current if I change myObject.property = @"hello";,委托方法被触发并对我的表视图进行更新,但我不希望这种情况发生,但仅适用于我明确指定的某些更改,而不是所有更改。

4

1 回答 1

4

from的setPrimitiveValue:forKey:方法NSManagedObject正是这样做的,例如

[myObject setPrimitiveValue:@"hello" forKey:@"property"]

或者,使用动态生成的访问器方法:

[myObject setPrimitiveProperty:@"hello"]

但是您应该阅读该方法的文档,因为有一些“特殊注意事项”。

另一种方法可能是创建“嵌套托管对象上下文”并对该子上下文进行所有修改。只有在保存子上下文时,更改才会传播到父上下文。

于 2012-07-25T18:28:47.907 回答