开源框架Banner实现图片轮播

常量

常量名称 描述 所属方法
BannerConfig.NOT_INDICATOR 不显示指示器和标题 setBannerStyle
BannerConfig.CIRCLE_INDICATOR 显示圆形指示器 setBannerStyle
BannerConfig.NUM_INDICATOR 显示数字指示器 setBannerStyle
BannerConfig.NUM_INDICATOR_TITLE 显示数字指示器和标题 setBannerStyle
BannerConfig.CIRCLE_INDICATOR_TITLE 显示圆形指示器和标题(垂直显示) setBannerStyle
BannerConfig.CIRCLE_INDICATOR_TITLE_INSIDE 显示圆形指示器和标题(水平显示) setBannerStyle
BannerConfig.LEFT 指示器居左 setIndicatorGravity
BannerConfig.CENTER 指示器居中 setIndicatorGravity
BannerConfig.RIGHT 指示器居右 setIndicatorGravity

动画常量类(setBannerAnimation方法调用)

常量类名
Transformer.Default
Transformer.Accordion
Transformer.BackgroundToForeground
Transformer.ForegroundToBackground
Transformer.CubeIn
Transformer.CubeOut
Transformer.DepthPage
Transformer.FlipHorizontal
Transformer.FlipVertical
Transformer.RotateDown
Transformer.RotateUp
Transformer.ScaleInOut
Transformer.Stack
Transformer.Tablet
Transformer.ZoomIn
Transformer.ZoomOut
Transformer.ZoomOutSlide

方法

方法名 描述 版本限制
setBannerStyle(int bannerStyle) 设置轮播样式(默认为CIRCLE_INDICATOR)
setIndicatorGravity(int type) 设置指示器位置(没有标题默认为右边,有标题时默认左边)
isAutoPlay(boolean isAutoPlay) 设置是否自动轮播(默认自动)
setViewPagerIsScroll(boolean isScroll) 设置是否允许手动滑动轮播图(默认true) 1.4.5开始
update(List<?> imageUrls,List titles) 更新图片和标题 1.4.5开始
update(List<?> imageUrls) 更新图片 1.4.5开始
startAutoPlay() 开始轮播 1.4开始,此方法只作用于banner加载完毕-->需要在start()后执行
stopAutoPlay() 结束轮播 1.4开始,此方法只作用于banner加载完毕-->需要在start()后执行
start() 开始进行banner渲染 1.4开始
setOffscreenPageLimit(int limit) 同viewpager的方法作用一样 1.4.2开始
setBannerTitle(String[] titles) 设置轮播要显示的标题和图片对应(如果不传默认不显示标题) 1.3.3结束
setBannerTitleList(List titles) 设置轮播要显示的标题和图片对应(如果不传默认不显示标题) 1.3.3结束
setBannerTitles(List titles) 设置轮播要显示的标题和图片对应(如果不传默认不显示标题) 1.4开始
setDelayTime(int time) 设置轮播图片间隔时间(单位毫秒,默认为2000)
setImages(Object[]/List<?> imagesUrl) 设置轮播图片(所有设置参数方法都放在此方法之前执行) 1.4后去掉数组传参
setImages(Object[]/List<?> imagesUrl,OnLoadImageListener listener) 设置轮播图片,并且自定义图片加载方式 1.3.3结束
setOnBannerClickListener(this) 设置点击事件,下标是从1开始 无(1.4.9以后废弃了)
setOnBannerListener(this) 设置点击事件,下标是从0开始 1.4.9以后
setOnLoadImageListener(this) 设置图片加载事件,可以自定义图片加载方式 1.3.3结束
setImageLoader(Object implements ImageLoader) 设置图片加载器 1.4开始
setOnPageChangeListener(this) 设置viewpager的滑动监听
setBannerAnimation(Class<? extends PageTransformer> transformer) 设置viewpager的默认动画,传值见动画表
setPageTransformer(boolean reverseDrawingOrder, ViewPager.PageTransformer transformer) 设置viewpager的自定义动画  

1.添加依赖库

compile 'com.youth.banner:banner:1.4.9'

2.在清单文件中加权限

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
//读取外置存储卡权限
<uses-permission android:name="android.permission.INTERNET" />
//获取网络权限
3.在布局文件中加Banner
<com.youth.banner.Bannerxmlns:app="http://schemas.android.com/apk/res-auto"android:id="@+id/banner"android:layout_width="match_parent"android:layout_height="高度自定义" />

4.给图片集合添加数据和实例化

banner = (Banner) findViewById(R.id.banner);
list=new ArrayList<>();
listtu=new ArrayList<>();
list.add("http://img.poco.cn/mypoco/myphoto/20071007/11/20071007114140_1251314291.jpg");
list.add("http://a3.att.hudong.com/72/76/01300000012339118647690465772.jpg");
list.add("http://p1.qqyou.com/pic/uploadpic/2012-4/21/2012042120062170120.jpg");
listtu.add("啦啦啦");
listtu.add("啦啦啦德玛");
listtu.add("啦啦啦西亚");

5.设置Banner 属性

banner.setIndicatorGravity(BannerConfig.CIRCLE_INDICATOR);
//设置指示器位置(当banner模式中有指示器时)
 banner.setBannerTitles(listtu);//添加标题 banner.setImageLoader(new GlideImageLoader());//设置图片加载器 banner.setBannerStyle(BannerConfig.CIRCLE_INDICATOR_TITLE);
 //设置banner样式
 banner.setImages(list);
//设置图片集合
 banner.isAutoPlay(true);
 //设置自动轮播,默认为true
banner.setDelayTime(2500);
 //设置轮播时间单位毫秒
banner.start();//调用

6.图片加载器重写

          注意:
          1.图片加载器由自己选择,这里不限制,只是提供几种使用方法
          2.返回的图片路径为Object类型,由于不能确定你到底使用的那种图片加载器,
          传输的到的是什么格式,那么这种就使用Object接收和返回,你只需要强转成你传输的类型就行,
          切记不要胡乱强转!
       
 
 public void displayImage(Context context, Object path, ImageView imageView) {//集合是String类型所以转成String
        Glide.with(context).load( (String) path).into(imageView);}
}

最后大神链接:

https://github.com/youth5201314/banner

Banner实现图片轮播相关推荐

  1. Banner无限图片轮播

    //首先导入Imageloader文件然后在builder里面依赖banner   compile 'com.youth.banner:banner:1.4.9' MyApp类 package com ...

  2. 最新Banner(图片轮播)配置使用

    Step 1.依赖banner Gradle dependencies{compile 'com.youth.banner:banner:1.4.9' //最新版本 } 或者引用本地lib compi ...

  3. Android广告图片轮播,支持无限循环和设置轮播样式、切换时间等

    Android-----------广告图片轮播控件 Banner广告图片轮播控件,支持无限循环和多种主题,可以灵活设置轮播样式.动画.轮播和切换时间.位置.图片加载框架等! 很多Android AP ...

  4. java实现轮播图片_Banner框架实现图片轮播

    Banner 实现图片轮播 简介 导入 自定义样式 快捷使用 总结 Blog如有不对,敬请斧正 喜欢Android的可以关注我,日常更新Android干货 看都看到这了,加个关注叭! 简介 Banne ...

  5. Android----------- Banner2 广告图片轮播ViewPager2实现

    之前发过了Banner1 广告图片轮播了,现在使用了Banner2,非常不错,来分享一下. Banner广告图片轮播控件,支持无限循环和多种主题,可以灵活设置轮播样式.动画.轮播和切换时间.位置.图片 ...

  6. android首页图片轮播效果,Android_Android自动播放Banner图片轮播效果,先看一下效果图支持本地图 - phpStudy...

    Android自动播放Banner图片轮播效果 先看一下效果图 支持本地图片以及网络图片or本地网络混合. 使用方式: android:id="@+id/banner" andro ...

  7. 响应式banner图片轮播布局代码

    响应式banner图片轮播布局代码 基于jQuery制作企业家具网站首页banner响应式图片轮播,支持带左右按钮控制图片淡出淡现切换效果.手机自适应屏幕大小.修改:添加json动态数据轮播图片. 演 ...

  8. 制作支持View,图片轮播的Banner

    之前有一个项目中有用到轮播,不过不是简单的轮播图片就完了,而是要轮播很多个View,一开始我的想法和大家一样在github在一个算了,哈哈,不过在试用了很多个项目之后都觉得不能完全满足我的需求,大部分 ...

  9. android banner加载布局,Android知识点之图片轮播控件Banner

    Rate this post 在我们来发Android项目时,经常有图片或者广告的轮播功能的需求,下面将介绍一款Android开发时使用的开源图片轮播控件Banner,同时按序讲解如何使用配置这款控件 ...

  10. android 自动播放 幻灯片,Android自动播放Banner图片轮播效果

    本文实例为大家分享了Android自动播放Banner图片轮播的具体代码,供大家参考,具体内容如下 先看一下效果图 支持本地图片以及网络图片or本地网络混合. 使用方式: android:id=&qu ...

最新文章

  1. SQL同时删除两张表中的数据
  2. (转载)Xcode中other linker flags的作用
  3. sql server2005 循环操作
  4. 扩容是元素还是数组_02 数组(附ArrayList源码分析)
  5. codeforces 15C. Industrial Nim
  6. Java安全教程–创建SSL连接和证书的分步指南
  7. python函数的嵌套调用_python函数的嵌套调用
  8. 一文抽丝剥茧带你掌握复杂Gremlin查询的调试方法
  9. 外星网络大肆入侵,地球人能安好吗?
  10. 图片居中裁剪_魔镜,魔镜,谁最美丽!利用PS图层混合模式打造图片幻觉效果
  11. Vue.js 学习笔记 十二 Vue发起Ajax请求
  12. CenterNet-Objects as Points论文翻译
  13. 中国科学院慈松:云计算如何可持续发展
  14. 【优化调度】基于matlab粒子群算法求解水电厂优化调度购电最小问题【含Matlab源码 1234期】
  15. android 来电自动接听和自动挂断
  16. java面向对象程序设计 第3版_Java面向对象程序设计(第3版)-聂哲
  17. spark-大表join优化方案
  18. 剑侠世界3怎么快速起号?
  19. Tomcat7 配置Https双向证书认证
  20. 从业20年的“老司机”跟你聊聊:超融合技术哪家强?!

热门文章

  1. iPhone屏幕分辨率
  2. Inkscape 输入希腊字母
  3. SharePoint 2013 图文开发系列之列表定义高级篇
  4. 如何对网络安全攻击采取防御措施
  5. 青年大学习分类收集截屏小程序
  6. JScript服务器运行,jscript模拟的“控制台”程序Web服务器教程
  7. 访问页面出错:The requested URL / was not found on this server. 网站打开出现404
  8. 计算机培训课堂感言,信息技术培训学习感言.docx
  9. QuantumultX 初学者傻瓜教程
  10. 【工具】D2RQ安装和配置