Slide 25
Slide 25 text
25
class KVOTarget: NSObject { @objc dynamic var value = 0 }
let target = KVOTarget()
var captured = [Int?]()
let kvoToken = target.observe(\.value, options: .new) {
(target, change) in
captured.append(change.newValue)
}
XCTAssertEqual(captured, [])
target.value = 1
target.value = 2
XCTAssertEqual(captured, [1, 2])
kvoToken.invalidate()
target.value = 3
XCTAssertEqual(captured, [1, 2])
Key-Value Observing
複習⼀下