首页 > 解决方案 > 当一个按钮被选中时取消选择另一个按钮

问题描述

我有三个按钮链接在一起,称为 tipChanged 。一个按钮被默认选中(10%) 我想写一些代码让一个按钮被选中,另外两个会自动删除。我的代码工作但太罗嗦了,有什么简单的方法吗?以下是我的代码,在此先感谢。

导入 UIKit

类 CalculatorViewController: UIViewController {

@IBOutlet weak var zeroPctButton: UIButton!
@IBOutlet weak var tenPctButton: UIButton!
@IBOutlet weak var twentyPctButton: UIButton!

@IBAction func tipChanged(_ sender: UIButton) {
    let pctChoosed = sender.currentTitle
    if pctChoosed == "0%"{
        zeroPctButton.isSelected = true
        tenPctButton.isSelected = false
        twentyPctButton.isSelected = false
    }else if pctChoosed == "10%"{
        zeroPctButton.isSelected = false
        tenPctButton.isSelected = true
        twentyPctButton.isSelected = false
    }else{
        zeroPctButton.isSelected = false
        tenPctButton.isSelected = false
        twentyPctButton.isSelected = true
    }
 }   

}

标签: swiftbuttondeselect

解决方案


删除 if 语句并将它们全部设置为 false。然后在它们被设置为 false 的地方设置 sender.isSelected = true ,你应该得到想要的结果。


推荐阅读