gpt4 book ai didi

ios - Swift 为单选按钮创建自定义逻辑

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

我有四个自定义 UIButton,我应用了按钮图像单选按钮(选中并选中)。四个按钮我有单独的操作方法我可以轻松更改图像但是如果我选中第一个按钮另外三个按钮需要取消选中。它应该像单选按钮一样 react 。

在这里,在我的代码下面

 @IBAction func first_scheme(_ sender: Any) {

bRec = !bRec
if (bRec == true) {
firstscheme_button.setImage(UIImage(named: "uncheck.png"), for: .normal)
} else {

firstscheme_button.setImage(UIImage(named: "check.png"), for: .normal)
}
}

最佳答案

如果你一直有 4 个单选按钮,你可以将它们放在一个数组中。

var radioButtons: [ButtonType] = [r1, r2, r3, r4]

您现在可以循环访问该按钮并将另一个按钮的值设置为“未选中”。

func setRadioButtons(button: ButtonType) {
for radioButton in radioButtons {
if radioButton !== button {
radioButton.setImage(UIImage(named: "uncheck.png"), for: .normal)
}
}
}

@IBAction func first_scheme(_ sender: Any) {
bRec = !bRec
if bRec {
firstscheme_button.setImage(UIImage(named: "uncheck.png"), for: .normal)
} else {
firstscheme_button.setImage(UIImage(named: "check.png"), for: .normal)
}
setRadioButtons(button: sender)
}

替代方法

如果您只想选中单击的按钮并取消选中其他按钮,则逻辑更简单。

为所有单选按钮创建通用操作,并为所有 UIButton 创建 IBOutletcollection

var radioButtons: [UIButton] = [r1, r2, r3, r4]

最后执行公共(public)方法为

func setRadioButtons(button: UIButton) {
for getradioButton in radioButtons {
getradioButton.setImage(UIImage(named: "uncheck.png"), for: .normal)
}
button.setImage(UIImage(named: "check.png"), for: .normal)
}

关于ios - Swift 为单选按钮创建自定义逻辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52166513/

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