gpt4 book ai didi

ios - swift 。使用 IBOutlet 更改多个 UIButton

转载 作者:搜寻专家 更新时间:2023-10-31 22:31:18 26 4
gpt4 key购买 nike

所以,我在一个 View Controller 上有 20 个 UI 按钮。我还有 2 个其他按钮,它们将更改这些按钮的不同组的 currentTitle 或背景颜色。 (例如,按下这 2 个按钮中的一个按钮将更改其他 10 个按钮的颜色,而按下另一个按钮将更改其中 15 个按钮的背景。)

我注定要创建 20 个不同的 IBOutlets,例如:

@IBOutlet weak var 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 次。

是否可以将这些按钮放入组中,这样我就可以编写一行代码来更改该组中的所有内容?

最佳答案

将按钮标签设置为 101 到 125 等系列,然后单击任何按钮执行此操作

for(UIButton *button in <parent view of buttons>.subviews){
if(button.tag >= 101 && button.tag <= 125){
button.setTitleColor(UIColor.redColor(), forState: .Normal()
}
}

对于 Swift

for subview in self.createBugView.subviews {

if let button = subview as? UIButton {
// this is a button
if(button.tag >= 101 && button.tag <= 125){
button.setTitleColor(UIColor.red, for: .normal)
}
}
}

关于ios - swift 。使用 IBOutlet 更改多个 UIButton,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38541952/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com