我正在尝试找出新的KeyValueObserving(KVO)API。我不知道我在做什么错的,因为我得到initial观察确定,但不new还是old。这就是我在做什么:
import Foundation
class Foo: NSObject {
@objc var bar = 0
}
let foo = Foo()
let observer = foo.observe(\.bar, options: [.initial, .new, .old]) {(o, change) in
print("old: \(change.oldValue) - new: \(change.newValue) ")
}
foo.bar = foo.bar + 1
observer.invalidate()
Run Code Online (Sandbox Code Playgroud)
我得到的输出是:
old: nil - new: Optional(0)
Run Code Online (Sandbox Code Playgroud)
但是我应该得到:
old: nil - new: Optional(0)
old: Optional(0) - new: Optional(1)
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
| 归档时间: |
|
| 查看次数: |
575 次 |
| 最近记录: |