GIT地址android
1.依赖git
compile 'com.youth.banner:banner:1.4.9'
2.XML布局文件github
<com.youth.banner.Banner android:id="@+id/banner" android:layout_width="wrap_content" android:layout_height="200dp"/>
3.代码实现数组
banner .setImages(imgs)//添加图片集合或图片url集合 .setIndicatorGravity(BannerConfig.CENTER)//设置指示器位置(当banner模式中有指示器时) .setBannerAnimation(Transformer.FlipHorizontal)//设置banner动画效果 .setBannerTitles(titles)//设置标题集合(当banner样式有显示title时) .setDelayTime(1500)//设置轮播时间 .setBannerStyle(BannerConfig.CIRCLE_INDICATOR) .setImageLoader(new GlideImage())//加载图片 .setIndicatorGravity(BannerConfig.CENTER)//设置指示器位置 .start();
工具类ide
public class GlideImage extends ImageLoader { @Override public void displayImage(Context context, Object path, ImageView imageView) { //String注意修改类型 Picasso.with(context.getApplicationContext()).load((String) path).into(imageView); } }
Attributes工具 |
forma布局 |
describe字体 |
delay_time动画 |
integerthis |
轮播间隔时间,默认2000 |
scroll_time |
integer |
轮播滑动执行时间,默认800 |
is_auto_play |
boolean |
是否自动轮播,默认true |
title_background |
color |
reference |
title_textcolor |
color |
标题字体颜色 |
title_textsize |
dimension |
标题字体大小 |
title_height |
dimension |
标题栏高度 |
indicator_width |
dimension |
指示器圆形按钮的宽度 |
indicator_height |
dimension |
指示器圆形按钮的高度 |
indicator_margin |
dimension |
指示器之间的间距 |
indicator_drawable_selected |
reference |
指示器选中效果 |
indicator_drawable_unselected |
reference |
指示器未选中效果 |
image_scale_type |
enum |
和imageview的ScaleType做用同样 |
方法名 |
描述 |
版本限制 |
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的自定义动画 |
无 |
常量名称 |
描述 |
所属方法 |
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 |