【发布时间】:2020-09-21 20:38:33
【问题描述】:
我有 30 个按钮,每行 3 个。我希望用户能够选择每行三个之一,左列是默认值(“ee”)。我似乎无法完成这项工作......
使用以下代码,我可以在单击按钮时更改按钮的颜色,但在单击另一个按钮时不会取消选择。我想将按钮标题字符串发送到“ext”变量,这将告诉应用程序用户在每一行上选择了哪个选项(每一行都有不同的变量)
我将此代码用于一行 3 个按钮:
@IBAction func `extension`(_ sender: UIButton) {
ext = String(sender.titleLabel!.text ?? "ee")
sender.backgroundColor = #colorLiteral(red: 0.09334511863, green: 0.1549694077, blue: 0.2597150259, alpha: 1)
sender.isSelected = !sender.isSelected
【问题讨论】:
-
您希望每一行都有一个单选按钮行为。在这里阅读:stackoverflow.com/a/29117898/13087977
-
我是否为每一行创建一个新数组?似乎需要大量代码才能使其适用于这么多按钮。我在 Swift 课程上,他们制作了一个包含三个按钮的应用程序,每个按钮使用一个 IBOutlet。我正在尝试分解该代码并查看是否可以使其工作
-
对于 30 个按钮,您需要 30 个插座。一种或另一种方式,您将需要它。在我之前发送的帖子中,他只是将 3 个按钮分组,逻辑在 RadioButtonController 中。您需要 10 个数组来执行此操作,但您只需编写一次逻辑代码 - 这太棒了!直接使用 IBActions 会导致大量重复/相似的代码。
-
我试试看!我对此真的很陌生,仍在努力思考如何放入这些单选按钮..