单击按钮后,不会使用randomElement更改背景图像

问题描述 投票:0回答:1

我有一个图像名称为Array的数组。当我单击一个按钮时,它应该更改背景图像。但是,当我第一次单击该按钮时,它可以正常工作。但是,当我第二次单击它时,它不会更改背景图像。

导入UIKit

类ViewController:UIViewController {

var imagesArray = ["1", "2", "3"]

override func viewDidLoad() {
    super.viewDidLoad()

}


@IBAction func changeBackground_Tapped(_ sender: UIButton) {

    if let randomImage = imagesArray.randomElement(){

    let backgroundImage = UIImageView(frame: UIScreen.main.bounds)
    backgroundImage.image = UIImage(named: randomImage)
    backgroundImage.contentMode = UIView.ContentMode.scaleAspectFill
    self.view.insertSubview(backgroundImage, at: 0)

    }
}

}

有什么想法吗?谢谢!

arrays swift xcode background-image
1个回答
0
投票

罗伯特在评论中问您,为什么每次都要创建新的imageView而不是在imageView中更改图像。

[C0行]将一个新的imageView插入到最背景的图层中(因此您看不到它,因为它位于第一个imageView的后面)导入UIKit

self.view.insertSubview(backgroundImage, at: 0)
© www.soinside.com 2019 - 2024. All rights reserved.