我通过JSON使用MySQL表中的对象填充tableView。源数据由许多用户以网站形式引入,有时他们不会将图像URL引入字段。
下载的JSON对象显示在tableView中,哪些行配置为显示文本,详细文本和图像。
如果对象没有图片网址,应用程序错误,我想显示默认图片,以避免崩溃。
我的代码:
let url:URL = URL(string: "http://www.thecocktaildb.com/api/json/v1/1/filter.php?a=Non_Alcoholic")!
URLSession.shared.dataTask(with: (url as URL)) { (data, resp, error) in
if (error == nil && data != nil) {
DispatchQueue.main.async(execute: {
do {
let DuLieu = try JSONSerialization.jsonObject(with: data!, options: .allowFragments) as! NSDictionary
let Mang = DuLieu.value(forKey: "drinks") as! NSArray
for mang in Mang {
let dulieu = mang as! NSDictionary
let strDrink = dulieu.value(forKey: "strDrink") as! String
let strDrinkThumb = dulieu.value(forKey: "strDrinkThumb") as! String //Image (Error loading)
let idDrink = dulieu.value(forKey: "idDrink") as! String
self.danhmuc.append(DanhMuc(hinhanh: strDrinkThumb, tieude: strDrink, id: idDrink))
}
self.collectionView.reloadData()
} catch {
print("Error")
}
})
}
}.resume()
图片 - (加载错误) - 代码:
let strDrinkThumb = dulieu.value(forKey: "strDrinkThumb") as! String
如果网站用户未在网络表单中包含图片网址,如何显示默认图片?