Swift3 3个按钮的单选按钮逻辑

Swift3 3个按钮的单选按钮逻辑,swift3,Swift3,我试图显示3个单选按钮。如果选择了按钮1,则应禁用剩余的按钮2。如果选择按钮2,则应禁用按钮1和3。最后,如果选择按钮3,则应禁用1和2。我尝试了多种方法,但没有成功。这是我的代码,谢谢你的帮助 @IBAction func button1Clicked(_ sender: UIButton) { if button2.isSelected { button2.isSelected = false button1.isSelected = true

我试图显示3个单选按钮。如果选择了按钮1,则应禁用剩余的按钮2。如果选择按钮2,则应禁用按钮1和3。最后,如果选择按钮3,则应禁用1和2。我尝试了多种方法,但没有成功。这是我的代码,谢谢你的帮助

@IBAction func button1Clicked(_ sender: UIButton) {
    if button2.isSelected {
        button2.isSelected = false
        button1.isSelected = true
    } else {
        button1.isSelected = true
    }
}

@IBAction func button2Clicked(_ sender: UIButton) {
    if button1.isSelected {
        button1.isSelected = false
        button2.isSelected = true
    } else {
        button2.isSelected = true
    }
}


@IBAction func button3Clicked(_ sender: UIButton) {
    if button3.isSelected {
        button3.isSelected = false
        button2.isSelected = true
        //button1.isSelected = true
    } else {
        button1.isSelected = true
    }
}

通过更改按钮的UIImage,您可以这样尝试:

@IBAction func mr(_ sender: Any) {
    mrOutlet.setImage(UIImage(named: "check"), for: .normal)
    msOutlet.setImage(UIImage(named: "uncheck"), for: .normal)
    mrsOutlet.setImage(UIImage(named: "uncheck"), for: .normal)
    salutation = "Mr."
}

@IBAction func ms(_ sender: Any) {
     msOutlet.setImage(UIImage(named: "check"), for: .normal)
    mrOutlet.setImage(UIImage(named: "uncheck"), for: .normal)
    mrsOutlet.setImage(UIImage(named: "uncheck"), for: .normal)
    salutation = "Ms."
}

@IBAction func mrs(_ sender: Any) {
     mrsOutlet.setImage(UIImage(named: "check"), for: .normal)
    mrOutlet.setImage(UIImage(named: "uncheck"), for: .normal)
    msOutlet.setImage(UIImage(named: "uncheck"), for: .normal)
    salutation = "Mrs."
}
希望这有助于: