Если у вас есть 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)
}
альтернативный метод
Если все, что вы хотите сделать, это проверить кнопку, которую нажали, и снять флажок другие кнопки, логика будет проще.
Создайте общее действие для всех переключателей, а также создайте IBOutletcollection для всех ваших кнопок UIB,
var radioButtons: [UIButton] = [r1, r2, r3, r4]
наконец, выполните общий метод как
func setRadioButtons(button: UIButton) {
for getradioButton in radioButtons {
getradioButton.setImage(UIImage(named: "uncheck.png"), for: .normal)
}
button.setImage(UIImage(named: "check.png"), for: .normal)
}