use*_*213 4 xcode uibutton uiimage swift
我正在开发一个有按钮的应用程序.该按钮没有文字,图像或背景.
所以我想要做的是在viewDidLoad函数中给它一个图像.
这就是我所拥有的:
@IBOutlet var tapButton: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
tapButton.setImage("redTap.png", forState: UIControlState.Normal)
}
Run Code Online (Sandbox Code Playgroud)
但我有一个错误,说我无法将字符串转换为UIIMage.
我如何让它工作?
我试过了:
let image = UIImage(named: "redTap.png")
tapButton.setImage(image, forState: UIControlState.Normal)
Run Code Online (Sandbox Code Playgroud)
我已经开始工作,但现在我遇到了问题.
该图像被假设为红色文本,但它显示为蓝色.
通过使用以下方法,我能够正确显示图像:
let image = UIImage(named: imageColor[randNum])?.imageWithRenderingMode(.AlwaysOriginal)
tapButton.setImage(image, forState: UIControlState.Normal)
Run Code Online (Sandbox Code Playgroud)
我现在想要的是按下按钮时没有突出显示按钮.我有一些其他按钮,它们在xcode中分配了图像,而不是通过代码.按下时它们不突出显示.
那么当按下按钮时如何摆脱突出显示呢?
Mea*_* S. 10
你不需要".png".
如果".imageWithRenderingMode(.AlwaysOriginal)"适用于您:要将相同的图像保持在不同的状态,您必须为不同的状态设置相同的图像/属性.
@IBOutlet var tapButton: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
tapButton.setImage(UIImage(named: "redTap")?.imageWithRenderingMode(.AlwaysOriginal), forState: .Normal)
tapButton.setImage(UIImage(named: "redTap")?.imageWithRenderingMode(.AlwaysOriginal), forState: .Highlighted)
}
Run Code Online (Sandbox Code Playgroud)
斯威夫特3
yourBtn.setImage( UIImage.init(named: "imagename"), for: .normal)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
35941 次 |
| 最近记录: |