无限轮播的实现

2018-03-06  本文已影响25人  Double_Chen

一般来说,轮播视图可以通过ScrollView来实现,不过有点缺陷,就是无法在手动快速的拖动下,保持视图的流畅性。

那么当我们希望轮播图可以比较完美的无缝切换的话,可以采用collectionView的方式实现。

原理:
当轮播5张图片时,通过collectionView创建好滚动视图,此时效果是和scrollView一样的,不过当我们设置section也就是分区个数为100或者更多,并且将当前indexPath设置到第50个分区即中间值的时候,无论用户如何快速滑动collectionView,在短时间内都不会出现边界,且因为重用机制,所以不用过于担心内存消耗,然后我们在用户停止手动滑动的时候将indexPath.section再次设为中间值,即可实现一个较完美的无限轮播。

github地址

上一篇 下一篇

猜你喜欢

热点阅读