iHu*_*ter 7 core-data objective-c key-value-observing nsmanagedobject
我有NSManagedObject两个属性:
NSNumber *score;
NSDate *score_timestamp;
Run Code Online (Sandbox Code Playgroud)
我希望score_timestamp每次更新时都会更新我的字段score.
我显然不能使用-willSave方法,因为我的上下文偶尔score_timestamp会被保存,并且不会是最新的.因此,我应该覆盖-setScore:或设置我的托管对象作为其自己score字段的键值观察器.
该-setScore:解决方案似乎很容易:
- (void) setScore:(NSNumber *)score
{
[self willChangeValueForKey:@"score"];
[self setPrimitiveScore:score];
[self didChangeValueForKey:@"score"];
self.score_timestamp = [NSDate date];
}
Run Code Online (Sandbox Code Playgroud)
以这种方式做事有什么警告吗?或者我应该使用KVO解决方案?
更新
到目前为止,我收到了两个响应,我的代码无法通过setValue: forKey:,我还在等待示例.天真的召唤[(NSManagedObject *)myObject setValue:value forKey:@"score"]呼唤我的二传手.
因此,如果我切换到KVO解决方案,我应该addObserver:在所有awake方法中将其删除willTurnIntoFault吗?或者那不是那么简单?
| 归档时间: |
|
| 查看次数: |
1313 次 |
| 最近记录: |