我有和imageView,我在userData中登录时从服务器获取userData我有一个“profilePic”参数:“penguins.jpg”。现在我添加域名“http://.....(self.userData.value(forKey:”profilePic“)!)”并将此值保存到字符串变量中以存储,当我访问该值并尝试将url转换为数据并添加到imageView .image它正在抛出:在解开一个可选值时意外地发现了nil。
我的所有其他userData(如姓名,地址,电话号码)都显示正常,但图像除外。
我的代码:
以下是我尝试的一些方法:
的方法:1
let ad : AppDelegate = UIApplication.shared.delegate as! AppDelegate
let imageUrlString = ad.userImagePath
let imageUrl:URL = URL(string: imageUrlString)! // it is throwing error here(: unexpectedly found nil while unwrapping an optional value)
DispatchQueue.global(qos: .userInitiated).async {
let imageData:NSData = NSData(contentsOf: imageUrl)!
DispatchQueue.main.async {
let image = UIImage(data: imageData as Data)
self.profileImage.image = image
}
}
的方法:2
if let url = NSURL(string: ad.userImagePath) {
if let data = NSData(contentsOf: url as URL){
if let imageUrl = UIImage(data: data as Data) {
profileImage.image = imageUrl
}
}
}
我已经尝试了不同的方法来解决这个问题,无法弄清楚我的错误是什么..最后我在这里..请有人帮助他......