我有一个UICollectionView,它有2k +记录。在任何时候只能看到6-7行,我正在使用可重复使用的单元格。一切正常。
但是当我在cellForRowAtIndexPath中创建一个控制台时,最初会加载80多行。之后,它再次加载前7行,并正确加载可见单元格。
为什么最初加载80多行。这会使初始加载略有滞后。
.java
更新
我正在使用自动调整大小的单元格。所以我确实将 estimatedItemSize 定义为 UICollectionViewFlowLayoutAutomaticSize
我尝试定义一个正确的 CGSize 而不是UICollectionViewFlowLayoutAutomaticSize。额外的细胞停止加载。
答案 0 :(得分:1)
在执行自动调整大小时,我们给出了estimateItemSize。
在使用 UICollectionViewFlowLayoutAutomaticSize 进行estimateItemSize时,collectionview会尝试加载可数数量的单元格(可见和不可见)并获取估计的大小。
如果给出了合适的CGSize(估计值),则额外的单元格(不可见)将被加载得更少。因此,估计的大小越接近,加载的不可见细胞就越少。