从用户类swift parse

时间:2015-08-02 20:36:06

标签: image swift parse-platform

我想从Parse中检索用户的头像。我在User默认Parse类中创建了一个File列,我成功上传了一个图像,但我不知道这个函数有什么问题:

 var query = PFQuery(className: "User")
    query.whereKey("username", equalTo: PFUser.currentUser()!.username!)
    query.findObjectsInBackgroundWithBlock {
        (objects:[AnyObject]?,error:NSError?) -> Void in
        if error == nil {
            let imagesobjects = objects as! [PFObject]
            for object : PFObject in objects as! [PFObject] {
                let image = object["Avatar"] as! PFFile
                image.getDataInBackgroundWithBlock {
                    (imageData:NSData?, error:NSError?) -> Void in
                    if error == nil {
                        if let finalimage = UIImage(data: imageData!) {
                            self.avatarImage.image = finalimage
                        }
                    }
                }
            }
        }
    }

谢谢。卢卡

2 个答案:

答案 0 :(得分:1)

如果您尝试检索当前的用户头像,则不需要这样做。

请执行以下操作:

    let avatarFile = PFUser.currentUser()!["avatar"] as PFFile
    avatarFile.getDataInBackgroundWithBlock {
    (imageData:NSData?, error:NSError?) -> Void in
    if error == nil {
        if let finalimage = UIImage(data: imageData!) {
            self.avatarImage.image = finalimage
        }
    }
}

答案 1 :(得分:0)

另一种方法是使用PFImageView:

 @IBOutlet weak var avatarImageView: PFImageView!

 if PFUser.currentUser()!["avatar"] != nil {
      avatarImageView.file = PFUser.currentUser()!["avatar"] as? PFFile
      avatarImageView.loadInBackground()
 }