3

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

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

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

4

1 回答 1

2

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

永远可定制的类是一个被调用的类方法+appearance:,你可以像这样使用它。

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

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

要开始使用,请查看iOS 5 中的 Ray Wenderlichs 教程用户界面自定义和/或114 - Customizing the Appearance of UIKit ControlsWWDC11 视频会话。

于 2012-10-30T08:27:07.147 回答