【发布时间】:2015-09-23 12:39:41
【问题描述】:
我正在开发一个使用 Parse 作为后端的应用程序。每当我尝试加载图像时,我得到的 NSData 不是空的,但每当我尝试将其转换为 UIImage 时,我得到的图像是 nil。
我已经检查了 Parse 上的所有图像,并且可以从数据库中查看/获取所有图像。我还重新上传了图像,以防万一它们有问题。
这是我获取 NSData 并将其转换为 UIImage 的一段代码:
let myImage = object.objectForKey("imagem") as! PFFile
myImage.getDataInBackgroundWithBlock({(imageData : NSData?, error : NSError?) -> Void in
if error == nil {
if let imageData = imageData{
if let newImage = UIImage(data: imageData){
myClass.imagem = newImage
}
}
}
self.collectionView?.reloadData()
})
【问题讨论】:
-
您是如何将图像转换为数据的?
-
你在哪里检查图像是否为零?
getDataInBackgroundWithBlock()是一个异步函数,可能会导致您的观察。检查图像时该功能未完成。因此,请提供您检查图像是否为零的信息。 -
每当我在 Parse 上上传图像时,我猜它都会被转换。我已经成功完成了几次这个过程。
-
这要么是您如何检查图像是否为零的问题,要么是您如何首先保存图像的问题。无论哪种方式,问题都不在于这段代码。
-
我将 NSData 打印到日志中,还创建了一个 if(imageData != nil)。我得到了 NSData,但每当我将其转换为 UIImage 时,它都是 nil
标签: ios swift parse-platform uiimage nsdata