无限轮播实现思路(封装)
来源:互联网 发布:hiv专用交友软件 编辑:程序博客网 时间:2024/06/06 16:38
以10组为例,以第5组为中间,描述中的“第1个”代表第0个item
具体代码请参考:https://github.com/shimenyimeng/-Unlimited-image-rotation
1. 请求数据,定义数组保存数据
2. 自定义轮播视图loopView
定义方法- (instancetype)initWithImages:(NSArray *)images;把images传过去,在此方法中设置代理、注册cell
数据源方法返回10组
3. 自定义flowLayout
设置一系列与cell布局有关的代码
同时也可以在这里设置flowLayout附属的collectionView的属性
4. 初步实现10组之后,需要一开始跳到第5组第1个,在loopView类中必须保证数据源方法走完之后再跳,所以可以使用异步线程到主队列,这样可以保 证跳到第5组第1个之前,数据源方法已经走完
4. 自定义cell,定义image属性,重写setter方法,在setter方法中给cell的imageView赋值
5. 把pageControl定义在loopView,添加pageControl到控制器的view上
scrollViewDidScroll方法中设置loopView的pageControl,
6. 把定时器定义在loopView,每隔一秒row++,当row==3时,section++,由于在scrollViewDidScroll方法 中已经实现了无限轮播,所以这里的section 会自动调整,让它先滚到第6组第1个,然后无动画的滚到第5组第1个
7. 在scrollViewDidEndDecelerating停止减速方法中,判断section是否是4,如果到了第4组,就让它滚动到第5组最后一个。
8. 开始拖拽时暂停定时器,停止减速后scrollViewDidEndDecelerating,开启定时器方法中开启定时器(由于自动滚动也会走这个方法,可以加一个判 断,如果self.timer == nil才开启定时器)
- 无限轮播实现思路(封装)
- 简单实现 scrollview无限轮播的封装
- collectionView 无限轮播设计思路
- 简单的无限轮播封装
- collectionview实现无限轮播
- 无限轮播 实现原理
- 无限轮播的实现
- 无限轮播的实现
- ViewPager实现无限轮播
- ViewPager无限轮播实现
- banner实现无限轮播
- Banner实现无限轮播
- Banner实现无限轮播
- banner实现无限轮播
- Android高仿京东淘宝自动无限循环轮播控件的实现思路和过程
- 轮播频道实现思路
- ViewPager实现广告轮播---(一)(无限循环)
- UIColectionView实现无限滚动(图片轮播)
- Redis-3.x集群配置(RedisCluster+SpringBoot+Jedis)
- 面向对象三大特性五大原则 + 低耦合高内聚
- 24、Java入门—反射之通过反射了解集合泛型的本质
- JS控制CSS伪元素的方法(下)
- java学习视频day01测试Junit
- 无限轮播实现思路(封装)
- html5新特性
- less学习
- 理解$watch ,$apply 和 $digest --- 理解数据绑定过程
- 如何通过几何画板学这些定理
- Linux进程的管理
- 每日一个js实例6--通过面向对象实现进度条
- 安装centos7.0 docker引擎时,解决lvm包冲突问题
- Map遍历的四种方式