我正在研究一个有按钮的应用程序。该按钮没有文字,图像或背景。如何在swift中更改按钮图像?
所以我想要做的就是在viewDidLoad函数中给它一个图像。
这是我有:
@IBOutlet var tapButton: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
tapButton.setImage("redTap.png", forState: UIControlState.Normal)
}
但是我有说,我不能把字符串转换为UIImage的错误。
我该如何让它起作用?
我曾尝试:
let image = UIImage(named: "redTap.png")
tapButton.setImage(image, forState: UIControlState.Normal)
我得到它的工作,但现在我有一个问题。
图像假设为红色文本,但显示为蓝色。
我能够用得到的图像正确显示:
let image = UIImage(named: imageColor[randNum])?.imageWithRenderingMode(.AlwaysOriginal)
tapButton.setImage(image, forState: UIControlState.Normal)
我现在想要的是没有按下按钮时,该按钮被突出显示。我有几个其他按钮在xcode中分配给它们的图像,而不是通过代码。按下时不会突出显示。
那么我怎样才能摆脱当按钮被按下突出显示?
它现在正在工作,但不是显示一个红色的按钮,这是图像,它显示一个蓝色的。我如何让它显示原始图像? – user2303213
更新了代码以显示如何在不同状态下保持相同。 –
你不需要设置两个状态。如果没有其他设置,所有状态都使用与“正常”状态相同的图像。 – rmaddy