我想在UIView的房产上使用KVO,但我不知道它是否合规。 以“隐藏”财产为例。
我去了UIView类的头文件,找不到指示,我也去了这个属性的文档。有人谈到“检查参考文献是否合规”他在谈论什么参考文献?
答案 0 :(得分:3)
听起来他们在这里(或相当模糊地)引用了KVC合规性文档:
具体来说,您需要查看该类是否响应给定键的valueForKey:
和setValue:forKey:
。关于如何实际检查合规性,文档是多余的。我的第一个想法是将你的代码包装在try / catch块中,并捕获异常,但考虑到通常会抛出异常,这可能不会起作用。
一般的假设是UIKit中的大多数对象都符合 NOT KVO,如果你需要它们,你可以继承并实现它。你可以在这里看到一个非常相似的问题/重复,以及Apple框架传播者Dave Delong的回答:iOS: How do I know if a property is KVO-compliant?