У меня есть UICollectionView с пользовательским классом UICollectionViewCell, который добавляет еще один UIView (thumbnailView) в свой контентный просмотр. Это другое представление имеет свойство UIImageView (imageView), изображение которого загружается с помощью SDWebImage асинхронно. Все это работает нормально, пока ячейка не будет повторно использована, пока изображение исходной ячейки все еще загружается. Если вы прокрутите достаточно быстро через изображения CollectionView, начните появляться в ячейках, где они не должны быть (вероятно, потому, что ячейка повторно используется и загрузка изображений заканчивается впоследствии), просто чтобы ее заменили, как только правильное изображение для повторного использования Ячейка заканчивает загрузку.UICollectionView + SDWebImage + Повторное использование ячеек
Чтобы это исправить, я добавил следующее к моему UICollectionViewCell подклассу, чтобы остановить загрузку изображения оригинальной клетки:
- (void)prepareForReuse
{
[super prepareForReuse];
[self.thumbnailView.imageView cancelCurrentImageLoad];
}
Но к моему удивлению, это, кажется, не менять абсолютно ничего. Я что-то делаю неправильно, или я просто смотрю в неправильном направлении?