【发布时间】:2020-04-01 00:04:15
【问题描述】:
要在 Swift 中进行 KVO,您需要创建一个基于 NSObject 的 @objc 类,并且可以观察存储并标记为 @objc 和 dynamic 的属性。
- 您能否观察计算属性(即
@objc和dynamic)?
我刚刚浏览了 Objective-C 指南,它表明您可以为计算属性标记 KVO 依赖项。并且(我认为)观察元素级别的数组属性变化。这些都可以在 Swift 中完成吗?
【问题讨论】:
-
如果一个属性是一个计算属性,你到底会观察什么?什么会构成计算属性的变化?我的意思是,我知道我们使用存储属性观察到的内容:调用了 setter,从而以符合 KVC 的方式更改了属性的值。计算属性的类比是什么?
-
"这些都可以在 Swift 中完成吗?"你试过了吗?请举例说明你想观察什么。