繁体   English   中英

UICollectionView:如何使用dequeueReusableCellWithReuseIdentifier加载比屏幕大小更多的单元格?

[英]UICollectionView: how to load more cells than the screen size using dequeueReusableCellWithReuseIdentifier?

我使用UICollectionView和自定义collectionViewCells进行工作,我确切地知道dequeueReusableCellWithReuseIdentifier的工作方式。 当某个单元格从屏幕上消失后(滚动后),该同一单元格将用于显示新的单元格。 但是,由于我的单元格需要花费一些时间才能显示,所以如果我快速滚动,那看起来并不好。

这是其工作方式的一个示例:

在此处输入图片说明

我想要的是加载单元格4(以及5和6),即使它没有显示在屏幕上。 因此,我想使用一个“缓冲区”,接下来的3个单元将在其中加载。 如果我向下滚动一点,而单元格1消失了,则单元格1将用于加载单元格7。这可能吗?

谢谢 !

为什么细胞未准备好? 也许您正在从网络加载图像? 您可以尝试以下选项:

1-在cellForItemAtIndexPath中直接从缓存加载之后,尝试使用willDisplayCell来使一个或多个单元出队并加载到某些缓存(例如,简单数组)中...

2-您必须重写一个回收滚动视图...苹果公司在2011年或2012年的wwdc上有一些示例,您肯定可以找到一些示例...以这种方式,您可以决定将这些回收的电池装入多少。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM