【问题标题】:NSKeyValueObservation not working, Swift 4NSKeyValueObservation 不起作用,Swift 4
【发布时间】:2017-08-03 00:53:05
【问题描述】:

当变量在单例的共享实例上发生更改时,我应该如何正确设置以接收通知?目前,该块从未被触发。

class MyViewController: UIViewController {
    private var observer: NSKeyValueObservation?

    func configureKVO() {
        observer = MySingleton.shared.observe(\.shouldFetchDataFromServer) { (manager, change) in
            print("Changed: \(manager.shouldFetchDataFromServer)")
        }
        MySingleton.shared.shouldFetchDataFromServer = false
        MySingleton.shared.shouldFetchDataFromServer = true
    }
}

class MySingleton: NSObject {
    static let shared = MySingleton()
    @objc var shouldFetchDataFromServer: Bool = false
}

【问题讨论】:

    标签: ios swift key-value-observing swift4


    【解决方案1】:

    将'dynamic'关键字添加到shouldFetchDataFromServer的声明中,它应该可以工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-07-12
      • 1970-01-01
      • 1970-01-01
      • 2018-11-02
      • 2018-03-30
      • 1970-01-01
      • 2023-04-08
      • 2023-03-31
      相关资源
      最近更新 更多