在swift中循环变量

时间:2015-06-22 04:25:13

标签: swift for-loop uiimage

我想改变这个变量在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名称中获得正确的内容?

4 个答案:

答案 0 :(得分:0)

您无需为每张图片创建新变量,请尝试以下操作:

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

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

我希望能帮到你!

答案 1 :(得分:0)

试试这段代码。

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

答案 2 :(得分:0)

首先初始化您的阵列,然后您可以使用范围进行初始化 而且因为你处理文件,检查它们的存在是个好主意

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

答案 3 :(得分:0)

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