您的位置:首页 > 其它

广告栏(自动轮播,无限循环)-图片轮播控件Banner的简单使用总结

2017-01-03 16:26 465 查看

Gradle

dependencies{
compile 'com.youth.banner:banner:1.1.5'  //指定版本
compile 'com.youth.banner:banner:+' //最新版本
}


常量

方法名描述
Banner.NOT_INDICATOR不显示指示器和标题
Banner.CIRCLE_INDICATOR显示圆形指示器
Banner.NUM_INDICATOR显示数字指示器
Banner.NUM_INDICATOR_TITLE显示数字指示器和标题
Banner.CIRCLE_INDICATOR_TITLE显示圆形指示器和标题
Banner.LEFT指示器居左
Banner.CENTER指示器居中
Banner.RIGHT指示器居右

方法

方法名描述
setBannerStyle(int bannerStyle)设置轮播样式(默认为Banner.NOT_INDICATOR)
setIndicatorGravity(int type)设置轮播样式(没有标题默认为右边,有标题时默认左边)
isAutoPlay(boolean isAutoPlay)设置是否自动轮播(默认自动)
setBannerTitle(String[] titles)设置轮播要显示的标题和图片对应(如果不传默认不显示标题)
setDelayTime(int time)设置轮播图片间隔时间(默认为2000)
setImages(Object[]/List<?> imagesUrl)设置轮播图片(所有设置参数方法都放在此方法之前执行)
setImages(Object[]/List<?> imagesUrl,OnLoadImageListener listener)设置轮播图片,并且自定义图片加载方式
setOnBannerClickListener(this)设置点击事件,下标是从1开始
setOnBannerImageListener(this)设置图片加载事件,可以自定义图片加载方式

使用步骤

1.在布局文件中添加Banner,可以设置自定义属性

简单使用
<com.youth.banner.Banner
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/banner"
android:layout_width="match_parent"
android:layout_height="高度自己设置" />

深度自定义
<com.youth.banner.Banner
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/banner"
android:layout_width="match_parent"
android:layout_height="高度自己设置"
app:indicator_margin="指示器之间的间距"
app:indicator_drawable_selected="指示器选中效果"
app:indicator_drawable_unselected="指示器未选中效果"
app:indicator_height="指示器圆形按钮的高度"
app:indicator_width="指示器圆形按钮的宽度" />

2.在Activity或者Fragment中配置Banner

private Banner banner;
String[] images= new String[] {"url"};
String[] titles=new String[]{"标题"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setConten
b4d0
tView(R.layout.activity_main);
banner = (Banner) findViewById(R.id.banner);
/**
* 需要什么设置,请看着文档在设置图片和标题前完成设置
*/
//可以选择设置图片网址,或者资源文件,默认加载框架Glide
//banner.setImages(images);
//自定义图片加载框架
banner.setImages(images, new Banner.OnLoadImageListener() {
@Override
public void OnLoadImage(ImageView view, Object url) {
Glide.with(getApplicationContext()).load(url).into(view);
}
});
}

//如果你需要考虑更好的体验,可以这么操作
@Override
protected void onStart() {
super.onStart();
//在页面可见时开始轮播,
//默认的是页面初始化时就开始轮播了,如果你不需要可以再onCreate方法里设置banner.isAutoPlay(false);
banner.isAutoPlay(true);
}

@Override
protected void onStop() {
super.onStop();
//在页面不可见时停止轮播
banner.isAutoPlay(false);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐