首页 > 解决方案 > 为什么我的按钮在选择时没有改变颜色?

问题描述

我在单个视图控制器上有几个按钮,我想在它们被选中时更改颜色。我当前的代码如下

@IBAction func academicButtonPressed(_ sender: Any) {
    if academicButton.backgroundColor == UIColor.systemBackground {
        academicButton.backgroundColor = UIColor(red: 20, green: 215, blue: 201, alpha: 1)
        academicButton.setTitleColor(UIColor.systemBackground, for: .selected)
    } else {
        academicButton.backgroundColor = UIColor.systemBackground
        academicButton.setTitleColor(UIColor(red: 20, green: 115, blue: 201, alpha: 1), for: .selected)
    }
}

但它不起作用。我究竟做错了什么?(这只是众多按钮中的一个;它们在被选中时都会做同样的事情)。

标签: swiftuiviewcontrolleruibuttonstoryboard

解决方案


我认为您在进行颜色比较时是错误的。

尝试这个;

academicButton.backgroundColor.isEqual(UIColor.systemBackground)

推荐阅读