**
Android中轮播框架Banner
**
Android中广告轮播框架Banner,实现循环播放多个广告图片和手动滑动循环等功能
1.添加依赖
dependencies {
······
implementation 'com.youth.banner:banner:1.4.10'
}
2.添加权限在AndroidManifest.xml中
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
3.在布局文件layout.xml中添加Banner控件
<com.youth.banner.Banner
android:id="@+id/mBanner"
android:layout_width="match_parent"
android:layout_height="@dimen/dp_300" />
4.在相应Activity或者Fragment中绑定并配置Banner,我是用的本地图片
//图片资源
int[] imageResourceID = new int[]{R.drawable.img, R.drawable.img2, R.drawable.img3, R.drawable.img4};
List<Integer> imgeList = new ArrayList<>();
//轮播标题
String[] mtitle = new String[]{"pic1", "pic2", "pic3", "pic4"};
List<String> titleList = new ArrayList<>();
for (int i = 0; i < imageResourceID.length; i++) {
imgeList.add(imageResourceID[i]);//把图片资源循环放入list里面
titleList.add(mtitle[i]);//把标题循环设置进列表里面
//设置图片加载器,通过Glide加载图片
mBanner.setImageLoader(new ImageLoader() {
@Override
public void displayImage(Context context, Object path, ImageView imageView) {
Glide.with(getActivity()).load(path).into(imageView);
}
});
//设置轮播的动画效果,里面有很多种特效,可以到GitHub上查看文档。
mBanner.setBannerAnimation(Transformer.Accordion);
mBanner.setImages(imgeList);//设置图片资源
mBanner.setBannerStyle(BannerConfig.CIRCLE_INDICATOR_TITLE_INSIDE);//设置banner显示样式(带标题的样式)
mBanner.setBannerTitles(titleList); //设置标题集合(当banner样式有显示title时)
//设置指示器位置(即图片下面的那个小圆点)
mBanner.setIndicatorGravity(BannerConfig.CENTER);
mBanner.setDelayTime(1000);//设置轮播时间1秒切换下一图
mBanner.setOnBannerListener(this);//设置监听
mBanner.start();//开始进行banner渲染
}
4.对轮播图设置点击事件,可以跳转到网页,也可以Toast弹出提示语。
//对轮播图设置点击监听事件
@Override
public void OnBannerClick(int position) {
//Toast.makeText(getActivity(), "你点击了第" + (position + 1) + "张轮播图", Toast.LENGTH_SHORT).show();
Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.addCategory(Intent.CATEGORY_BROWSABLE);
// intent.setData(Uri.parse("http://www.baidu.com"));
startActivity(intent);
}
效果图,方便实用