gpt4 book ai didi

ios - 单选按钮组 Swift 3 Xcode 8

转载 作者:搜寻专家 更新时间:2023-11-01 06:16:04 25 4
gpt4 key购买 nike

我搜索了各种来源,但找不到一个清晰而简单的解决方案来为 iOS 应用程序在 Swift 3 中使用 Xcode 8.3 创建等效的单选按钮组。

例如,如果我在一组中有 3 个按钮,并且一次只能选择一个。目前,我正在通过将组中 2 个按钮的状态更改为在另一个按钮被选中时未被选中来实现此目的,反之亦然。

@IBAction func buttonA(_ sender: Any) {
buttonB.isChecked = false
buttonC.isChecked = false
}

@IBAction func buttonB(_ sender: Any) {
buttonA.isChecked = false
buttonC.isChecked = false
}

@IBAction func buttonC(_ sender: Any) {
buttonA.isChecked = false
buttonB.isChecked = false
}

但是我希望有一种更有效的方法来做到这一点。

任何有关更有效解决方案的帮助将不胜感激。

最佳答案

您可以将所有按钮的 IBAction 连接到一个方法。

@IBAction func buttonClick(_ sender: UISwitch) { // you're using UISwitch I believe?

}

您应该将所有按钮添加到一个数组中:

// at class level
var buttons: [UISwitch]!

// in viewDidLoad
buttons = [buttonA, buttonB, buttonC]

然后,像这样编写 buttonClick 方法:

buttons.forEach { $0.isChecked = false } // uncheck everything
sender.isChecked = true // check the button that is clicked on

备选方案:

尝试使用 UITableView。每行包含一个选项。选择一行后,将该行的 accessoryType 更改为 .checkMark 并将每隔一行的更改为 .none

如果你太懒了,试着在 cocoapods.org 上搜索一下,看看其他人做了什么。

关于ios - 单选按钮组 Swift 3 Xcode 8,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44839293/

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