- swift语言并没有直接支持kvo,使用@objc dynamic关键字是编译器隐藏触发kvo机制的函数,另外,只能定义在遵循NSObject类的对象中被上述关键字标记的变量才能够使用到KVO(swift编程的环境中)。
- 若不使用combine来处理kvo,那就直接在函数prepare()函数中检测到关键路径值的变化并做出反应。
- 使用combine来处理kvo的键值观察将会很简单。
// 1
class TestObject: NSObject {
// 2
@objc dynamic var integerProperty: Int = 0
}
let obj