Ede*_*den 6 observers key-value-observing swift4 keypaths
我在使用新的KVO语法时遇到了一些麻烦.根据Apple文档:
为关键路径创建一个观察者并调用observe(_:options:changeHandler)方法.有关密钥路径的更多信息,请参阅密钥和密钥路径.
class MyObserver: NSObject {
@objc var objectToObserve: MyObjectToObserve
var observation: NSKeyValueObservation?
init(object: MyObjectToObserve) {
objectToObserve = object
super.init()
observation = observe(\.objectToObserve.myDate) { object, change in
print("Observed a change to \(object.objectToObserve).myDate, updated to: \(object.objectToObserve.myDate)")
}
}
}
let observed = MyObjectToObserve()
let observer = MyObserver(object: observed)
observed.updateDate()
Run Code Online (Sandbox Code Playgroud)
我正在初始化我的观察:
self.observation = self.webView!.observe(\.webView.isLoading, changeHandler: { (webView, observedChange) in
//code
})
Run Code Online (Sandbox Code Playgroud)
但是我收到了这个错误:
原来语法需要像这样,使用对象Type而不是对象实例名:
self.observation = self.webView!.observe(\WKWebView.isLoading, changeHandler: { (webView, observedChange) in
//code
})
Run Code Online (Sandbox Code Playgroud)
误读了文档¯\ _(ツ)_ /¯
| 归档时间: |
|
| 查看次数: |
1370 次 |
| 最近记录: |