我有以下代码从Firebase下载照片:
var imageFB : UIImage? = nil
profilePicRef.downloadURL(completion: { (url, error) in
if error != nil {
print(error!)
return
}
URLSession.shared.dataTask(with: url!, completionHandler: { (data, response, error) in
if error != nil {
print(error!)
return
}
guard let imageData = UIImage(data: data!) else { return }
DispatchQueue.main.async {
imageFB = imageData
}
}).resume()
})
当我进入代码时,我可以看到已经下载了图片,但是在执行该块之后,imageFB似乎仍然为零。 Xcode说'过程已经返回到表达式评估之前的状态'。在运行时访问照片的详细描述时。我猜这是队列的问题?任何人都可以帮我解决这个问题吗?
我认为队列存在问题,因此在实际下载照片之前执行另一个块。