AutoBanner
项目地址:Github
介绍
AutoBanner是一个简单实现自动无限轮播图的自定义banner控件。
属性
属性名称 | 描述 | 类型 | 默认值 |
---|---|---|---|
app:indicator_type | 指示器类型 | enum | image |
app:delay_time | 轮播时间间隔 | int | 3000 |
app:auto_play | 是否开启自动轮播 | boolean | true |
app:indicator_gravity | 指示器位置 | enum | center |
app:indicator_margin | 图片指示器间距 | dimension | 4 |
app:indicator_size | 指示器图片大小 | dimension | 8 |
app:indicator_drawable_selected | 指示器选中图片 | reference | 黑点子 |
app:indicator_drawable_unselected | 指示器未选中图片 | reference | 白点子 |
app:indicator_layout_height | 指示器父布局高度 | dimension | 36 |
app:indicator_layout_background | 指示器父布局背景 | reference/color | transparent |
方法
方法名称 | 说明 | 参数 |
---|---|---|
setAutoPlay(boolean autoPlay) | 设置是否自动轮播 | 默认true |
setDelayTime(int time) | 设置轮播图片间隔 | 默认3000 |
setIndicatorGravity(int gravity) | 指示器gravity | 0:left 1:center 2:right |
setImageResources(List<String> imageUrlList, AutoBannerViewListener lis) | 填充图片数据,调用此方法会自动调用start() | --- |
start() | 开始轮播 | --- |
stop() | 停止轮播 | --- |
效果如下图:
banner1.jpgbanner2.jpg
banner3.jpg
使用方法
1.Gradle中添加依赖
dependencies{
compile 'com.yjz:AutoBanner:1.0.2'
}
2.添加权限 AndroidManifest.xml (显示网络图片需要Internet)
<uses-permission android:name="android.permission.INTERNET" />
3.布局文件中添加
<com.jz.autobanner.AutoBannerView
android:id="@+id/autoBanner"
android:layout_width="match_parent"
android:layout_height="自己定"
/>
4.in Activity or Fragment
autoBannerView = findViewById(R.id.autoBanner);
List<String> images = new ArrayList<>();
images.add("http://ww1.sinaimg.cn/large/0065oQSqly1frsllc19gfj30k80tfah5.jpg");
images.add("http://ww1.sinaimg.cn/large/0065oQSqly1frslibvijrj30k80q678q.jpg");
images.add("http://ww1.sinaimg.cn/large/0065oQSqly1frrifts8l5j30j60ojq6u.jpg");
images.add("http://ww1.sinaimg.cn/large/0065oQSqly1frjd77dt8zj30k80q2aga.jpg");
autoBannerView.setImageResources(images, new AutoBannerView.AutoBannerViewListener() {
@Override
public void displayImage(String imageURL, ImageView imageView) {
//显示图片方法,图片框架自己选~ 这里使用的是Glide
Glide.with(mActivity).load(imageURL).into(imageView);
}
@Override
public void onImageClick(int position, View imageView) {
//点击图片的事件...
Toast.makeText(mActivity, "点击了位置" + position, Toast.LENGTH_SHORT).show();
}
});
//可选
@Override
protected void onPause() {
super.onPause();
autoBannerView.stop();
}
@Override
protected void onResume() {
super.onResume();
autoBannerView.start();
}
over~ 需要扩展的可以下载自己扩展,类很简单~
网友评论