键值观察UIButton的状态

UIButton有一个状态属性,它似乎是所有帐户KVO兼容,没有任何文件指出,否则。 然而,当我添加一个观察者到一个UIButton的状态属性,观察者callback从未被调用。 怎么来的?

如果您查看UIControl的文档,state属性被标记为: synthesized from other flags.

我想这就是为什么对这个属性的更改不符合KVO。

但是,您可以简单地注册并观察您需要的值 – highlighted, selected, enabled. 这些属性是KVO兼容的,你将得到观察者callback时,他们改变。