在swift中循环变量

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

我想改变这个变量在swift中变成循环:

var image1 = UIImage(named: "image1")
    var image2 = UIImage(named: "image2")
    var image3 = UIImage(named: "image3")
    var image4 = UIImage(named: "image4")
    var image5 = UIImage(named: "image5")
    var image6 = UIImage(named: "image6")
    var image7 = UIImage(named: "image7")

    images.append(image1!)
    images.append(image2!)
    images.append(image3!)
    images.append(image4!)
    images.append(image5!)
    images.append(image6!)
    images.append(image7!)

但是我的循环出错:

for var i = 1; i < 8; i++
    {
        var image(i) = UIImage(named: "image\(i)")
        images.append("image\(i)"!)
    }

如何在var image和images.append名称中获得正确的内容?

swift for-loop uiimage
4个回答
0
投票

您不需要为每个图像创建一个新变量,请尝试以下方法:

for var i = 1; i < 8; i++
{
    images.append(UIImage(named: "image\(i)"))
}

此循环将创建一个包含8个图像的数组,而不创建变量image1到image8。

希望对你有所帮助!


0
投票

首先初始化你的阵列,然后你可以用范围来做,并且因为你处理文件,最好检查它们的存在

var images:[UIImage]=[]
for i in 1...8{
        if let img=UIImage(named: "image\(i)"){
            images.append(img)
        }
}

0
投票

确保image1-7实际存在于您的项目中(即在Images.xcassets或.pngs中),否则UIImage named无法实例化


0
投票

试试这个代码。

var images: [UIImage] = []
for var i = 1; i < 8; i++
{
    images.append(UIImage(named: "image\(i)"))
}
© www.soinside.com 2019 - 2024. All rights reserved.