У меня есть UICollectionView
, но те же методы должны применяться к UITableViews
. Каждая из моих ячеек содержит изображение, которое я загружаю с диска, что является медленной операцией. Чтобы смягчить это, я использую асинхронную очередь отправки. Это прекрасно работает, но при быстром прокрутке результаты этих операций складываются, так что ячейка будет последовательно менять свое изображение из одного в другое, пока окончательно не остановится при последнем вызове.
Раньше я делал чек, чтобы увидеть, была ли ячейка все еще видна, и если нет, я не буду продолжать. Однако это не работает с UICollectionView, и в любом случае оно неэффективно. Я рассматриваю возможность миграции для использования NSOperations
, которая может быть отменена, так что только последний вызов для изменения ячейки будет проходить. Я мог бы сделать это, проверив, завершилась ли операция в методе prepareForReuse
и отменила ее, если нет. Я надеюсь, что кто-то справился с этой проблемой в прошлом и может предоставить некоторые советы или решение.