将[UIImage]数组中的图像存储到Parse

时间:2015-06-27 09:15:00

标签: ios swift parse-platform

我有一个UIImage数组,图像,声明为

var images = [UIImage]()

我目前有图片存储在那里,当我使用println()函数输出它时,我得到了

[<UIImage: 0x195dc810>, <UIImage: 0x195da3e0>, <UIImage: 0x1950ab50>]

我想知道如何将这些图像上传到Parse作为一行。

以下是我现在(不工作)的完整代码:

@IBAction func saveToParse(sender: AnyObject) {

    for var i = 0; i < images.count; i++
    {
        var objectForSave:PFObject = PFObject(className: "NewLog")
        //error on this line below:  [(UIImage)] does not have a member variable named 'objectAtIndex'
        let imageData:NSData = NSData(data: UIImagePNGRepresentation(images.objectAtIndex(i) as! UIImage))

        var imageFile:PFFile = PFFile(data: imageData)
        imageFile.saveInBackgroundWithBlock({ (success:Bool, error:NSError?) -> Void in
            if success{
                objectForSave.setObject(imageFile, forKey: "Image")

                objectForSave.saveInBackgroundWithBlock({ (success:Bool, error:NSError?) -> Void in
                    if success{
                        //do smth
                    }else{
                        println(error)
                    }
                })

            }else{
                println(error)
            }

            }, progressBlock: { (progress:Int32) -> Void in

        })


    }     
    } 

谢谢。

1 个答案:

答案 0 :(得分:1)

您可以迭代数组中的所有项目,而不是迭代数组并使用索引。

for image in images

这将获得数组中的每个图像。 for循环中的所有内容都将为数组中的每个项执行一次。

您可以使用image代替images.objectAtIndex(i) as! UIImage

这也将使您的代码更容易为其他人阅读;)