Sop*_*unk 9 cocoa objective-c key-value-observing
我认为自制的@property setter应该是这样的:
-(void) setFoo:(Foo *)newFoo {
// Safeguards
// ...
[self willChangeValueForKey:@"foo"];
// Switcheroo
// ...
[self didChangeValueForKey:@"foo"];
}
Run Code Online (Sandbox Code Playgroud)
但是我在博客文章中看到很多代码,他们一直在做Cocoa的时间比我长得多,在这里它是这样的:
-(void) setFoo(Foo *)newFoo {
// Safeguards
// ...
// Switcheroo
// ...
}
Run Code Online (Sandbox Code Playgroud)
所以我的问题是,我们是否需要调用KVO通知方法?或者,如果您使用现代运行时更新私有iVar,它是否会神奇地完成?
| 归档时间: |
|
| 查看次数: |
2872 次 |
| 最近记录: |