ios - UIButton 和外观 API - 支持与否?

标签 ios controls customization appearance

根据UIAppearance protocol reference类需要符合 UIAppearanceContainer 支持标有UI_APPEARANCE_SELECTOR 的方法,以便外观代理正常工作。在 Apple 自己的 WWDC 2011 教学视频中,"Customizing the appearance of UIControls" ,他们提供了使用和讨论 UIButton 和 UILabel 的示例。

这两个类都符合(通过从 UIView 继承)UIAppearance 和 UIAppaeranceContainer 协议(protocol),但它们都没有具有标记为 UI_APPEARANCE_SELECTOR 的方法。虽然确实有效,但我的钱花在了它们上,没有得到 Apple 的完全支持,为什么在它们上使用外观代理是不安全的。

所以我有几个问题:

  • 我是否遗漏了一些使 UIButton/UILabel 符合 UIAppearance 代理先决条件的东西?
  • 您认为它们与 UIAppearance 代理一起使用是不安全的吗?
  • 如果事实证明这两个类不符合(显而易见的答案当然是任何用 UI_APPEARANCE_SELECTOR 标记其方法的对象),您会在生产中对什么对象使用外观代理> 并符合 UIAppearance 协议(protocol))?

最佳答案

好像有人提交了a radar on this issue ,但他提到在尝试通过外观代理使用方法时会抛出异常。他们为我工作,我同意 WWDC session 中的引用资料很可能是有人忘记了对标题进行注释。

关于ios - UIButton 和外观 API - 支持与否?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9974746/

相关文章:

c# - 在哪里可以找到模仿 iTunes 堆栈/填充/进度条的 WinForms 控件?

c# - 删除一个 SplitContainer 而不删除其他控件

windows - 下拉选择控件 - Windows 8 Metro - XAML

ios - 默认选项卡不显示所选的第一个选项卡

tree - Visual Studio代码侧边栏垂直引导线(自定义侧边栏)

java - 如何在 NetBeans 中显示构建结果中的错误汇总表?

iOS Swift - 删除 tableViewCell 中 tableview 中的行

iphone - UINavigationBar 在 UIImagePickerControllerDidCancel 之后向上移动?

java - 无法在真实设备上的 iOS 10 上运行 Appium 测试

iphone - 使用 url 连接时我的应用程序崩溃