这是我要解析的保存图片:
func uploadPost(){
var imageText = self.imageText.text
if (imageView.image == nil){
println("No image uploaded")
}
else{
var posts = PFObject(className: "Posts")
posts["imageText"] = imageText
posts["uploader"] = PFUser.currentUser()
posts.saveInBackgroundWithBlock({ (success: Bool, error: NSError?) -> Void in
if error == nil{
//**Success saving, now save image.**//
// Create an image data
var imageData = UIImagePNGRepresentation(self.imageView.image)
// Create a parse file to store in cloud
var parseImageFile = PFFile(name: "upload_image.png", data: imageData)
posts["imageFile"] = parseImageFile
posts.saveInBackgroundWithBlock({ (success: Bool, error: NSError?) -> Void in
if error == nil{
// Take user home
println("Data uploaded")
}
else{
println(error)
}
})
}
else{
println(error)
}
})
}
}
如何从解析中加载图像?这就是我的Parse.com“帖子”数据的样子:
有什么建议吗?
我想也许就像使用这个:
self.imageView.sd_setImageWithURL(url, completed: block)
但我不知道如何获取网址。如果图像有不同的名称怎么办?
答案 0 :(得分:0)
尝试这样的事情
let imageFile = pfObject["imageFile"] as? PFFile
if imageFile != nil{
imageFile!.getDataInBackgroundWithBlock {
(imageData: NSData?, error: NSError?) -> Void in
if error == nil {
if let imageData = imageData {
self.imageView.image = UIImage(data: imageData)!
}
}
}
}
其中pfObject是对象的引用。还有其他方法可以检查零值,但这应该有效。
只要您有对正确对象的引用(可以通过对objectId的查询获得),那么您应该只需要存储图像文件的列的名称而不是图像文件本身。