【发布时间】:2016-11-27 06:32:43
【问题描述】:
所以,我在一个视图控制器上有 20 个 UI 按钮。我还有 2 个其他按钮,它们将更改这些按钮的不同组的 currentTitle 或背景颜色。 (例如,按下这 2 个按钮中的一个将更改其他 10 个按钮的颜色,而按下另一个按钮将更改其中 15 个按钮的背景。)
我注定要创建 20 个不同的 IBOutlets,例如:
@IBOutlet 弱变量 button1: UIButton!
@IBOutlet weak var button2: UIButton!
@IBOutlet weak var button3: UIButton!
.
.
.
然后不得不再写 25 行:
button1!.setTitleColor(UIColor.redColor(), forState: .Normal()
button2!.setTitleColor(UIColor.redColor(), forState: .Normal()
button3!.setTitleColor(UIColor.redColor(), forState: .Normal()
肯定有更简单的方法来做到这一点?我无法将多个 UI 与 IBOutlet 链接,并且更改按钮的标签也没有多大作用,因为无论如何我仍然需要将这些该死的东西写下来 25 次。
是否可以将这些按钮分组,以便我可以编写一行代码来更改该组中的所有内容?
【问题讨论】:
-
您可以使用引用插座集合(数组 IBOutlet)而不是单个 IBOutlets
-
如何一次改变数组中的所有对象? [UIButton] 类型没有 setTitleColor 属性。抱歉,我对此有点陌生。
-
您需要遍历数组并设置每个按钮的标题颜色。
标签: ios swift uibutton iboutlet