我想从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
}
}
}
}
}
}
谢谢。卢卡
答案 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()
}