无限图片轮播器

                 无限图片轮播器实现

这里写图片描述

无限图片轮播器
0, 此时如图,就是初始状态
(1) 假设一开始显示3张图片
(2) scrollview的contentSize是5个imageview.width
(3) scrollview的contentOffset是一个imageview.width
1,此时做左滑操作,会来一个新的imageview(4号)
2,此时,去缓存池取image view,如果有,直接使用,没有则创建imageview
3,当滚动停止后,如图:

这里写图片描述

此时要做三件事:
(1)把离开屏幕的imageview(1号)放进缓存池,并从scrollview中remove掉
(2)把在scrollview上的image view重新设置frame,让他们回到初始状态(scrollview的中间)
(3)设置scrollview的contentOffset=imageview.width,回到初始状态

回复状态后,如图:

这里写图片描述

4,重复以上3步骤(右滑同理)

以下为我代码实现的无限图片轮播器:(我已经上传到github)
https://github.com/MR-Zong/GenPros
原理如上,实现起来用viewController封装scrollView ,然后用kvo监听scrollView的contentOffset.注意要自己管理内存,我用了模仿tableCell内存池的机制。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值