根据UIAppearance协议参考 http://developer.apple.com/library/ios/#documentation/UIKit/Reference/UIAppearance_Protocol/Reference/Reference.html一个类需要符合UI外观容器 http://developer.apple.com/library/ios/#recipes/UIAppearanceContainer_Protocol/Reference/Reference.html#//apple_ref/occ/intf/UIAppearanceContainer and支持的方法标记为UI_APPEARANCE_SELECTOR
为了使外观代理正常工作。在苹果自己的 WWDC 2011 教学视频中,“自定义 UIControls 的外观” https://developer.apple.com/videos/wwdc/2011/,他们提供了使用和讨论 UIButton 和 UILabel 的示例。
这两个类都符合(通过从 UIView 继承)UIAppearance 和 UIAppaeranceContainer 协议,但他们都没有有标记为的方法UI_APPEARANCE_SELECTOR
。虽然它们确实有效,但我的钱都花在了它们没有得到苹果的完全支持上,为什么在它们上使用外观代理是不安全的。
所以我有几个问题:
- 我是否错过了使 UIButton/UILabel 符合 UIAppearance 代理先决条件的某些内容?
- 您是否认为它们与 UIAppearance 代理一起使用不安全?
- 如果事实证明这两个类不符合,您会在生产中的哪个对象上使用外观代理(当然,明显的答案是任何用
UI_APPEARANCE_SELECTOR
并符合 UIAppearance 协议)?
好像有人提交了关于这个问题的雷达 http://openradar.appspot.com/11035189,但他提到尝试通过外观代理使用方法时会抛出异常。他们为我工作,我同意 WWDC 会议中的参考文献很可能是有人忘记注释标题。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)