UIButton setImage没有立即更改按钮的图像

时间:2019-01-05 10:01:57

标签: ios swift

我正在使用setImage()UIButton上设置图像,但是它不会立即更改图像。要显示图像,我需要再次单击按钮或其他按钮。如何解决此问题?

block.setImage(UIImage(named: "Oimage.png"), for: UIControl.State.normal)

3 个答案:

答案 0 :(得分:0)

问题不是设置图像的方式,而是设置图像的位置。您可能将其设置在IBAction内的按钮上,因此必须等待然后按下按钮。

一种方法是将其设置在视图控制器的viewDidLoad内部

override func viewDidLoad() {
    ...
    block.setImage(UIImage(named: "Oimage.png"), for: .normal)
}

...或者如果您使用情节提要,则可以通过情节提要进行设置。如果您是通过编程方式创建按钮,请在初始化lazy变量内设置按钮

答案 1 :(得分:0)

您可以在按钮操作中设置图像,如下所示:

 @IBAction buttonTapped(_ sender: UIButton) {
        let testImage = UIImage(named:"imageName")
        block.setImage(testImage, for: .normal)
    }

答案 2 :(得分:0)

只需将按钮的类型更改为自定义

enter image description here