Android图片轮播控件ConvenientBanner的简单使用
1.添加依赖
compile 'com.bigkoo:convenientbanner:2.0.5'
2.在布局文件中添加
<com.bigkoo.convenientbanner.ConvenientBanner xmlns:app="http://schemas.android.com/apk/res-auto" android:id="@+id/convenientBanner" android:layout_width="match_parent" android:layout_height="200dp" app:canLoop="true" //控制循环与否/>
3.数据源
private String[] images = {"http://img2.imgtn.bdimg.com/it/u=3093785514,1341050958&fm=21&gp=0.jpg",
"http://img2.3lian.com/2014/f2/37/d/40.jpg",
"http://d.3987.com/sqmy_131219/001.jpg",
"http://img2.3lian.com/2014/f2/37/d/39.jpg",
"http://www.8kmm.com/UploadFiles/2012/8/201208140920132659.jpg",
"http://f.hiphotos.baidu.com/image/h%3D200/sign=1478eb74d5a20cf45990f
9df460b4b0c/d058ccbf6c81800a5422e5fdb43533fa838b4779.jpg",
"http://f.hiphotos.baidu.com/image/pic/item/09fa513d269759ee50f1971ab6fb43166c22dfba.jpg"
};
private List<String> networkImages;
4.
//轮播图
convenientBanner = (ConvenientBanner) headerView.findViewById(R.id.home_convenientbanner);
//网络加载例子
networkImages = Arrays.asList(images);
convenientBanner.setPages(new CBViewHolderCreator<NetworkImageHolderView>() {
@Override
public NetworkImageHolderView createHolder() {
return new NetworkImageHolderView();
}
}, networkImages)
//设置两个点图片作为翻页指示器,不设置则没有指示器,可以根据自己需求自行配合自己的指示器,不需要圆点指示器可用不设
.setPageIndicator(new int[]{R.drawable.ic_page_indicator, R.drawable.ic_page_indicator_focused});
5.
/** * Created by Sai on 15/8/4. * 网络图片加载例子 */ public class NetworkImageHolderView implements Holder<String> { private ImageView imageView; @Override public View createView(Context context) { //你可以通过layout文件来创建,也可以像我一样用代码创建,不一定是Image,任何控件都可以进行翻页 imageView = new ImageView(context); imageView.setScaleType(ImageView.ScaleType.FIT_XY); return imageView; } @Override public void UpdateUI(Context context, final int position, String data) { imageView.setImageResource(R.drawable.aa); MyApplication.setImageUrlBitmap(imageView, data); } }
MyApplication.setImageUrlBitmap(imageView, data);
是封装的Glide图片加载框架 可以换成其他的
6.图片加载框架
导入依赖类库
//glide图片加载框架
compile 'com.github.bumptech.glide:glide:3.7.0'
7.
@Override public void onResume() { super.onResume(); //开始自动翻页 convenientBanner.startTurning(2000); } @Override public void onPause() { super.onPause(); //停止翻页 convenientBanner.stopTurning(); }