【问题标题】:I want to save UIImage instead of nil value on parse我想在解析时保存 UIImage 而不是 nil 值
【发布时间】:2015-10-12 22:47:33
【问题描述】:

我正在实施保存帖子部分,该帖子在保存以显示在主页上时包含用户个人资料图片。但是会有一个没有个人资料图片的用户。我试了这段代码,出现错误。

if let profilePicture = PFUser.currentUser()?.objectForKey("profile_picture") {
    post["profile_picture"] = profilePicture
} else {
    post["profile_picture"] = UIImage(named: "AvatarPlaceholder" )
}
post.saveInBackgroundWithBlock({ ( isSucessful: Bool, error : NSError?) -> Void in
    if error == nil {
        self.alert("success", message : "your post has been uploaded")
    } else {
        self.alert("Error", message : (error?.localizedDescription)!)
    }

如果用户有头像,那就没问题了。但如果不是,那就是问题所在。

我在资产中有 Avatarplaceholder jpeg 文件。

我的问题是.....

如何上传我的 avatarplaceHolder ?

或者有没有更好的方法来覆盖 nil 值?,

其实我不想浪费我的云存储。

【问题讨论】:

    标签: swift parse-platform uiimage


    【解决方案1】:

    我猜你必须将你的 UIImage 包装到一个 PFFile 中,如下所示:

    let imageData = UIImageJPEGRepresentation(UIImage(named: "AvatarPlaceholder")!, 0.5)!
    let profileImageFile = PFFile(name: "profileImage", data: imageData)
    post["profile_picture"] = profileImageFile
    

    【讨论】:

    • 它是 PNG,我将您的代码更改为 let imageData = UIImagePNGRepresentation(UIImage(named: "AvatarPlaceholder")!) let profileImageFile = PFFile(name: "profileImage.png", data: imageData! ) post["profile_picture"] = profileImageFile 它不工作。你明白为什么吗?
    • 2015-10-12 19:51:59.834 bany[4650:1872022] *** 由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“不能将 nil 用于键或值PF 对象。使用 NSNull 作为值。'
    • 调试它并检查什么值为 nil。也许您的资产未命名为“AvatarPlaceholder”。
    • 那我得知道怎么调试了,AvatarPlaceholder 就是它的正确名称。谢谢大佬!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-23
    • 2019-01-15
    • 1970-01-01
    相关资源
    最近更新 更多