ios按钮仅在轻敲时显示图像

时间:2018-05-15 05:15:25

标签: ios swift

我有以下代码用于在我的按钮上设置图像:

button.setImage(UIImage(named: "X", in: getBundleForCommon(), compatibleWith: nil)?.withRenderingMode(.alwaysTemplate), for: .normal)

但是图像仅在按下时会出现在按钮上然后消失。

如何在我的按钮上持续保存图像,这些图像在点按时不受影响。

5 个答案:

答案 0 :(得分:0)

试试这个,

button.setImage(UIImage(named:"x"), for: .normal)
button.setImage(UIImage(named:"x"), for: .highlighted)

答案 1 :(得分:0)

使用Swift在UIButton上设置图像:

button.setImage(UIImage(named:"x"), for: .normal)

答案 2 :(得分:0)

这有用吗?

button.setImage(UIImage(named: "X", in: getBundleForCommon(), compatibleWith: nil)?
.withRenderingMode(.alwaysOriginal), for: .normal)

答案 3 :(得分:0)

尝试:

for: UIControlState()

而不是

for: .normal

答案 4 :(得分:0)

您的图片是使用alwaysTemplate创建的,这意味着将忽略颜色信息。

设置按钮tintColor,无需点按即可显示图像。

let image = UIImage(named: "X", in: getBundleForCommon(), compatibleWith: nil)?.withRenderingMode(.alwaysTemplate)
button.setImage(image, for: .normal)
button.tintColor = .red

如果图像显示就绪,请删除alwaysTemplate

let image = UIImage(named: "X", in: getBundleForCommon(), compatibleWith: nil)
button.setImage(image, for: .normal)