我有一个带有照片的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
,因此对于大量照片,由于objectAtIndexPath
,这需要花费很长时间。
我是否可以通过性能会很差的核心数据中的数据实现长宽比单元?
我尝试了自动调整大小的单元格,从而消除了调用sizeForItemAtIndexPath的需要,但是我却失去了对我的项目中需要进行的布局布局进行动画处理的能力(动画根据估计的大小而不是单元格中的那个进行中继)。 / p>