Безопасно ли и имеет смысл отложить загрузку асинхронного изображения для ячейки? Идея заключается в том, что я хочу, чтобы функция обратного вызова из URLSession.shared.image (...) выполнялась после создания ячейки, и только один раз вызов cellForRow (at: indexPath) действителен, поскольку я считаю, что без отсрочки этого метода в этот момент должен вернуться нуль.Lazy загрузка изображения на UITableViewCell с использованием defer
URLSession.shared.image является частным расширения, которое выполняет задание данных и дает вытекающий обратный вызов, только если URL содержится в аргументе корректен и содержит изображение.
setImage (изображение: анимированный) - это частное расширение, которое позволяет вам установить изображение в UIImageView с помощью простой анимации.
Если отсрочка не подходит, укажите альтернативу.
Любая обратная связь будет оценена, спасибо!
override func tableView(_ tableView: UITableView, cellForRowAt
indexPath: IndexPath) -> UITableViewCell {
let cell = baseCell as! MyCell
let datum = data[indexPath.row]
cell.imageView.setImage(placeholderImage, for: .normal)
defer {
URLSession.shared.image(with: datum.previewURL) { image, isCached in
if let cell = tableView.cellForRow(at: indexPath) as? MyCell {
cell.imageView.setImage(image, animated: !isCached)
}
}
}
return cell
}
do u пытается использовать SDWebImage для него –