UIImageView в ячейке мерцает, когда tableView reloadData

Я знаю, что SDWebImage очистит кеш памяти, когда приложение войдет в фоновый режим. Таким образом, когда приложение выходит на передний план, прокрутите tableView для обновления, а затем перезагрузите данные, изображение в ячейке будет мерцать, даже если данные не изменились.

[cell.toolsImageView sd_setImageWithURL:[NSURL URLWithString:toolsModel.iconUrl] placeholderImage:[UIImage imageNamed:@"morentu_circle"] options:SDWebImageRetryFailed];

Есть ли какой-либо другой способ избежать мерцания, помимо оценки изменений модели?

Шаги мерцания вокруг reloadData:

  1. показывать изображение перед перезагрузкой данных;

  2. reloadData и imageView сбрасывают изображение с URL-адресом;

  3. найти изображение в кеше памяти SD и не найти;

  4. найти изображение в кеше SD-диска, получить его асинхронно;

  5. изменить, чтобы показать placeholderImage;

  6. загрузить образ диска.


person weiminghuaa    schedule 10.10.2016    source источник