我已经以编程方式设置了一个集合视图,该视图应该将API中的图像显示到单元格上。但是,一旦显示了单元格并调用了数据,这些单元格便保持为空。
Cells returning an empty image view
当前设置
lblDeliveryMethod.setOnClickListener {
// API CALL
APICALLING()
suspend {
delay(1000)
withContext(Dispatchers.Main) {
if (APIRESPONSES) {
// DO SOMETHING
}
}
}
}
尝试过:
使用cellForItemAt中的url常量的print语句确保URL返回。
我还使用占位符图像测试了单元格布局。
在viewDidAppear()中调用collectionView.reloadData()。
答案 0 :(得分:0)
您应该将Kingfisher
用作图像缓存库
https://github.com/onevcat/Kingfisher
首先,将广告连播添加到您的项目中:
pod 'Kingfisher'
替换此:
let url = URL(string: imageString)
let data = try? Data(contentsOf: url!)
if let imageData = data {
let imageFromDatabase = UIImage(data: imageData)
cell.imageView.image = imageFromDatabase
}
与此
let url = URL(string: imageString)
imageView.kf.setImage(with: url)