• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

SXCycleView: 优雅的创建轮播图

原作者: [db:作者] 来自: 网络 收藏 邀请

开源软件名称:

SXCycleView

开源软件地址:

https://gitee.com/poos/SXCycleView

开源软件介绍:

SXCycleView 轮播图

####博客文章地址https://my.oschina.net/bieshixuan/blog/789622

##!!!因为苹果CollectionView回收机制更改,所以改用了ScrollView,更快速,更节省内存!!!

###!!!a. 使用pod 导入包时候概率出现使用问题可以到SXCycleView文件夹下的文件加入工程即可,注意工程用到了SDWebImage

###b. import SXCycleView.h

//最新版本改为类方法[SXCycleView initWithFrame:CGRectMake(10, 200, 300, 200)              imageUrlArrs:@[  ]                    titles:@[  ]                clickBlock:^(NSInteger currentIndex) {                    NSLog(@"%ld", currentIndex);                }]];

任何问题欢迎留言

轮播图

使用collectionView可以很方便的创建轮播图,并且利用collectionViewCell的复用,很方便的管理,原理也很简单

a,把轮播图的元数据扩大,123123123...123123123

b,创建视图把初始位置设置为中间点

c,处理滚动到头时候

##.自己的想法和优雅的点子

####想法1,数据源的读取并不优雅

数据源是个很明显的双向循环,这个结构跟以前"听说"的双向链表那么的契合,为什么不使用双向链表作为数据源呢

####想法2,collection设置99999整的好么,表示我是一个崇尚优雅的猿

本来就是轮播嘛,滑动的时候怎么左右滚,划,总不会需要超过3个的cell吧

##Then->假如我有一个链表,假如我只使用3个cell,那么我可以写成一个循环滚动的轮播图吗

###原理应该是每次滑动结束之后就回到中间的那一张

左划3个cell的数据源整体向左,右划类推

interface

@property (nonatomic, assign) BOOL autoScroll;                //是否自动滚动,默认Yes@property (nonatomic, assign) CGFloat autoScrollTimeInterval; //自动滚动间隔时间,默认5s/** 开放的 pageControl ! 可以set一个新的pageControl以替换 ! 亦可简单重设frame ! 设置为nil即不显示 */@property (nonatomic, weak) UIPageControl *pageControl;//image数组初始化+ (instancetype)initWithFrame:(CGRect)frame imageArrs:(NSArray<UIImage *> *)imageArr clickBlock:(ClickedImageBlock)block;+ (instancetype)initWithFrame:(CGRect)frame imageArrs:(NSArray<UIImage *> *)imageArr titles:(NSArray *)titleArr clickBlock:(ClickedImageBlock)block;//url数组初始化+ (instancetype)initWithFrame:(CGRect)frame imageUrlArrs:(NSArray<NSString *> *)urlArr clickBlock:(ClickedImageBlock)block;+ (instancetype)initWithFrame:(CGRect)frame imageUrlArrs:(NSArray<NSString *> *)urlArr titles:(NSArray *)titleArr clickBlock:(ClickedImageBlock)block;

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap