【问题标题】:Efficient way to customize UIButtons自定义 UIButtons 的有效方法
【发布时间】:2012-10-30 08:21:42
【问题描述】:

在应用中自定义 UIButton 外观的最佳方式是什么?我正在开发一个应用程序,我们以编程方式更新 UIButtons 以看起来我们想要的方式。大多数按钮都是在 Interface Builder 中创建的,我们希望以有效的方式对它们执行 customizeButton-method。我只看到了两种实现方式:

  1. 在 IB 中创建按钮,将它们分配给插座,并在代码中为每个按钮调用 customizeButton问题:太过分了
  2. 子类 UIButton,在构造函数 initWithCoder: 中调用 customizeButton。然后将此类用于 IB 中的按钮。 问题:尽管这适用于在 IB 中创建的按钮,并且需要的样板代码比第 1 点少,但我已经阅读了所有针对 UIButton 子类化的警告,因为它们的类集群。

显然必须有更好的方法,第 3 点是什么?

【问题讨论】:

    标签: objective-c ios xcode uibutton interface-builder


    【解决方案1】:

    看看 UIAppearance。它从 iOS 5 开始可用,尤其适用于自定义标准 UI 元素。

    永远可自定义的类是一个名为 +appearance: 的类方法,您可以像这样使用它。

    [[UIButton appearance] setBackgroundColor:[UIColor redColor]];
    

    现在每个按钮都将具有红色背景色。

    要开始使用,请查看 WWDC11 视频的 Ray Wenderlichs 教程 User Interface Customization in iOS 5 和/或会话 114 - Customizing the Appearance of UIKit Controls

    【讨论】:

    • 很好,谢谢。出于好奇,在 iOS 5 之前有没有好的替代品?
    • 我想子类化是一种方式
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-19
    • 1970-01-01
    • 1970-01-01
    • 2013-01-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多