My app which I have made in swift 4
crashes when a news provider does not have an image! So when I scroll over an article which does not have an image it crashes and I get the error:
Thread 1: Fatal error: Unexpectedly found nil while unwrapping an Optional value
Here is my code for the image:
let imageCache = NSCache<AnyObject, AnyObject>()
extension UIImageView {
func downloadImage(from url: String){
let urlRequest = URLRequest(url: URL(string: url)!)
image = nil
if let imageFromCache = imageCache.object(forKey: url as AnyObject) as? UIImage {
self.image = imageFromCache
return
}
let task = URLSession.shared.dataTask(with: urlRequest) { (data,response,error) in
if error != nil {
print(error!)
return
}
DispatchQueue.main.async {
let imageToCache = UIImage(data: data!)
imageCache.setObject(imageToCache!, forKey: url as AnyObject)
self.image = imageToCache
}
}
task.resume()
}
}