Используя IB, я назначил изображения кнопкам .normal, .highlighted и .selected. При нажатии кнопки во время перехода .normal ->. Selected (someButton.isSelected = true
) выделенное изображение корректно отображается при прикосновении, однако при установке someButton.isSelected = false
для возврата в .normal вместо стандартного перехода с быстрым замиранием я вижу . выделенное изображение. Я видел в этом посте за 2013 год аналогичную проблему, однако мне интересно, применимо ли решение в Swift 4, поскольку я не совсем понимаю его. Моя цель состоит в том, чтобы «светящееся» изображение отображалось при каждом нажатии кнопки. Спасибо!
Вот полный код:
@IBAction func someButtonArray(_ sender: UIButton) {
UIView.transition(with: sender, duration: 0.3, options: .transitionCrossDissolve, animations: {
sender.setImage(UIImage(named: "TRANSITION_Pad-10.png"), for: UIControl.State.highlighted)
}, completion: nil)
if sender.isSelected == true {
UIView.transition(with: sender, duration: 0.3, options: .transitionCrossDissolve, animations: {
sender.setImage(UIImage(named: "INITIAL_Pad-13.png"), for: UIControl.State.normal)
}, completion: nil)
sender.isSelected = false
} else if sender.isSelected != true {
sender.isSelected = true
for buttons in 0...11 where buttons != (sender.tag) {
someButtonArray[buttons].isSelected = false
}
}
tableView.reloadData()
}