gpt4 book ai didi

ios - UICollectionView 加载除可见单元格之外的更多单元格

转载 作者:行者123 更新时间:2023-11-28 06:09:50 24 4
gpt4 key购买 nike

我有一个 UICollectionView,它有 2k+ 条记录。在任何时候,只有 6-7 行是可见的,我使用的是可重复使用的单元格。一切正常。

但是当我在 cellForRowAtIndexPath 中进行控制台登录时,最初加载了 80 多行。之后它再次加载第 7 行,并仅正确加载可见单元格。

为什么它最初加载 80 多行。这会使初始加载略有滞后。

func numberOfSections(in collectionView: UICollectionView) -> Int {
return 1
}

func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
return results.count
}

func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {

print("Cell For Row -> \(indexPath)")

let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "ResultCell", for: indexPath) as! ResultCell
cell.data = result[indexPath.item]
return cell
}

更新:

我正在使用自动调整大小的单元格。所以我确实将 estimatedItemSize 定义为 UICollectionViewFlowLayoutAutomaticSize

我尝试定义一个合适的 CGSize 而不是 UICollectionViewFlowLayoutAutomaticSize。额外的单元格停止加载。

最佳答案

在执行自动调整单元格大小时,我们给出 estimatedItemSize。

在为 estimatedItemSize 使用 UICollectionViewFlowLayoutAutomaticSize 时,collectionview 会尝试加载可数数量的单元格(可见和不可见)并获取估计大小。

如果给出了适当的 CGSize(估计值),额外的单元格(不可见)将被加载得更少。因此,您的估计大小越接近,加载的不可见单元就越少。

关于ios - UICollectionView 加载除可见单元格之外的更多单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47068210/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com