Is Timer class KVO complaint?

时间:2018-02-03 11:13:36

标签: xcode swift3 timer key-value-observing

How to know if a class is KVO complaint or not? I'm trying to add observer on Timer class property isValid, but it's not working. Is Timer Class KVO complaint or not?

1 个答案:

答案 0 :(得分:1)

通常,只有在文档告诉您属性时,才应假定属性符合KVO。 Timer isValid属性的文档并没有告诉您这一点,因此您应该假设它符合KVO。

但它并不需要。只有两件事可以将计时器isValidtrue更改为false

  • 计时器未重复且已解雇。

  • 计时器正在重复,您告诉invalidate

无论哪种方式,你已经确切地知道发生了什么。在第一种情况下,您自己的计时器操作会运行。在第二种情况下,您自己的代码说invalidate()。因此,没有必要观察任何事情。

如果您在其他地方有其他代码,对于安排定时器是否安全存在疑问,那么您可以先测试isValid