Swift - 图片循环轮播组件的实现(附样例)
2016-09-26 09:28
239 查看
图片的无限循环轮播功能常常用在广告或者新闻展示上面,本文演示如何实现一个 iOS 系统下的图片轮播组件。
1,组件功能介绍
(1)每隔一段时间,轮播器就会自动滚动到下一张图片。如果当前是最后一张图片的话,则又滚动回第一张图片。这样无限循环下去。
(2)在组件下方位置有页控制器(小圆点),显示图片数量和当前的位置。
(3)除了自动轮播,我们还可以通过手动滑动组件来显示上一张,下一张图片。手动控制滚动的时候自动轮播功能停止,手动滚动结束后自动轮播功能又自动启用。
(4)点击图片我们可以获取到当前图片的位置索引,便于我们后续操作。这里直接将索引值显示出来。
2,组件效果图
3,组件实现原理
(1)我们在一个 scrollerView 中横向放置三个并排的 imageView。管多少张图片都是交替使用这三个 imageView 来显示。
(2)每次图片滚动结束的时候,计算当前显示的图片索引值。并重置三个 imageView 里的图片和位置。
(3)由于图片可以通过网络加载,这里我用了一个第三方的图片库:ImageHelper。可以自动帮我们实现图片缓存,避免重复加载。(关于 ImageHelper,可以参考我之前写过的这篇文章:Swift
- 图片处理库AFImageHelper详解)
(4)在图片未加载出来的时候,其位置上会先显示一张加载提示图片。这里我同样借助 ImageHelper,将一段提示文字转成 Image,用来作为加载完毕前的提示。
4,组件代码
整个组件只有一个 swift 文件(SliderGalleryController.swift),里面包含一个组件实现类:SliderGalleryController。以及相关协议:SliderGalleryControllerDelegate。
5,使用样例
源码下载:
hangge_1314.zip
原文出自:www.hangge.com 转载请保留原文链接:http://www.hangge.com/blog/cache/detail_1314.html
1,组件功能介绍
(1)每隔一段时间,轮播器就会自动滚动到下一张图片。如果当前是最后一张图片的话,则又滚动回第一张图片。这样无限循环下去。
(2)在组件下方位置有页控制器(小圆点),显示图片数量和当前的位置。
(3)除了自动轮播,我们还可以通过手动滑动组件来显示上一张,下一张图片。手动控制滚动的时候自动轮播功能停止,手动滚动结束后自动轮播功能又自动启用。
(4)点击图片我们可以获取到当前图片的位置索引,便于我们后续操作。这里直接将索引值显示出来。
2,组件效果图
3,组件实现原理
(1)我们在一个 scrollerView 中横向放置三个并排的 imageView。管多少张图片都是交替使用这三个 imageView 来显示。
(2)每次图片滚动结束的时候,计算当前显示的图片索引值。并重置三个 imageView 里的图片和位置。
(3)由于图片可以通过网络加载,这里我用了一个第三方的图片库:ImageHelper。可以自动帮我们实现图片缓存,避免重复加载。(关于 ImageHelper,可以参考我之前写过的这篇文章:Swift
- 图片处理库AFImageHelper详解)
(4)在图片未加载出来的时候,其位置上会先显示一张加载提示图片。这里我同样借助 ImageHelper,将一段提示文字转成 Image,用来作为加载完毕前的提示。
4,组件代码
整个组件只有一个 swift 文件(SliderGalleryController.swift),里面包含一个组件实现类:SliderGalleryController。以及相关协议:SliderGalleryControllerDelegate。
hangge_1314.zip
原文出自:www.hangge.com 转载请保留原文链接:http://www.hangge.com/blog/cache/detail_1314.html
相关文章推荐
- Android实现Banner界面广告图片循环轮播(包括实现手动滑动循环)
- Android实现Banner界面广告图片循环轮播(包括实现手动滑动循环)
- Android实现Banner界面广告图片循环轮播(包括实现手动滑动循环)
- JavaScript实现图片轮播组件代码示例
- Android实现一款不错Banner界面广告图片循环轮播
- iOS开发项目实战——Swift实现图片轮播与浏览
- Swift 使用CollectionView 实现图片轮播封装
- Android实现Banner界面广告图片循环轮播(包括实现手动滑动循环)
- Swift 3.0 实现图片轮播器
- JS组件Bootstrap实现图片轮播效果
- Android实现Banner图片循环轮播
- iOS-Swift实现图片轮播
- js 实现图片间隔循环轮播以及没有间隔的循环轮播
- 实现广告图片循环轮播效果(包括实现手动滑动循环)
- [IOS]通过UIPageControl+UIScrollView实现图片循环轮播
- Swift - 继承UIView实现自定义可视化组件(附记分牌样例)
- Android使用ViewPager实现图片轮播(高度自适应,左右循环,自动轮播)
- IOS实现图片轮播无限循环效果
- 值得分享的JavaScript实现图片轮播组件
- EasySwift/YXJCycleView 任意视图的无限循环轮播图,可以是本地图片,可以是任意的view,可以是远程图片,再加文字描述岂不更好,pageController也支持高度自定义。