Как реализовать представление коллекции фотографий с ячейками с соотношением сторон, которое является быстрым для большого количества фотографий? - PullRequest
0 голосов
/ 01 ноября 2018

У меня есть UICollectionView с фотографиями, где каждая ячейка имеет одинаковое соотношение сторон фотографии. Данные о ширине и высоте фотографии хранятся в CoreData.

Я реализовал sizeForItemAtIndexPath:

- (CGSize)collectionView:(UICollectionView *)collectionView
                  layout:(UICollectionViewLayout *)collectionViewLayout
  sizeForItemAtIndexPath:(NSIndexPath *)indexPath {
        PhotoModel* model = [self.fetchedResultsController objectAtIndexPath: indexPath];
        return [self.cellAspectSizeWithFullSize: model.size];
}

sizeForItemAtIndexPath вызывается для ALL ячеек, поэтому для большого количества фотографий это занимает много времени из-за objectAtIndexPath.

Есть ли способ, как я могу реализовать ячейки размеров сторон из данных в основных данных, которые будут иметь такую ​​плохую производительность?

Я попытался самостоятельно определить размеры ячеек, устраняя необходимость вызывать sizeForItemAtIndexPath, но затем я теряю способность анимировать изменения компоновки, которые мне нужно сделать в моем проекте (анимация зависит от предполагаемого размера, а не от того, который указан в ячейке).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...