快速按钮背景图像没有出现?

时间:2016-09-22 18:09:54

标签: ios swift xcode uibutton uiimage

我有一些非常简单的代码,只是以编程方式将按钮的背景图像设置为某些东西但是当模拟器运行时它什么也没显示。在故事板上,它显示图像存在,但是没有任何显示。

class ViewController: UIViewController {

@IBOutlet weak var LetUsOutlet: UIButton!

override func viewDidLoad() {
    super.viewDidLoad()
    let backgroundColor = UIColor(red: 0, green: 255, blue: 247, alpha: 1)
    self.view.backgroundColor = backgroundColor
    let backgroundButtonImage = UIImage(named: "round rectangle button.png") as UIImage?
    self.LetUsOutlet.setImage(backgroundButtonImage, for: .normal)
}

@IBAction func LetUsCreateMeal(_ sender: UIButton) {
}
@IBAction func CreateYourOwn(_ sender: UIButton) {
}
@IBAction func BrowseItems(_ sender: UIButton) {
}
@IBAction func ViewYourMeals(_ sender: UIButton) {
}

}

这是我所拥有的简单代码,所以我不确定它为什么不能正常工作。下面是我的故事板。

http://imgur.com/gallery/c5EWW

第一个按钮是我尝试以编程方式设置背景的位置,另外3个是我在故事板中设置背景图像属性的时候。

运行时会发生这种情况,表明所有背景图像都是空的。

http://imgur.com/gallery/urM25

感谢任何帮助。

编辑:我似乎将图像存储在错误的位置,我把它放在一个单独的文件夹中而不是在xassets文件夹中。

3 个答案:

答案 0 :(得分:1)

要更改按钮背景图片,您应该使用

LetUsOutlet.setBackgroundImage(UIImage(named:"round rectangle button.png"), forState: UIControlState.Normal)

答案 1 :(得分:0)

我嘲笑了一个例子 - 似乎对我有用。我建议你检查你的按钮在IB中的约束

Mock up

答案 2 :(得分:0)

更改此行

let backgroundButtonImage = UIImage(named: "round rectangle button.png") as UIImage?

到这一行

let backgroundButtonImage = UIImage(named: "round rectangle button")

和这一行

self.LetUsOutlet.setImage(backgroundButtonImage, for: .normal)

到这个

self.LetUsOutlet.setBackgroundImage(backgroundButtonImage, for: .normal)