第一步 :
依赖:
//轮播依赖
implementation'com.youth.banner:banner:1.4.10'
//Glide框架
implementation "com.github.bumptech.glide:glide:4.6.1"
/权限
<uses-permission android:name="android.permission.INTERNET" /> //网络权限
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> //读取SD卡
布局
<com.youth.banner.Banner
android:layout_width="match_parent"
android:layout_height="200dp"
android:id="@+id/main_banner"
></com.youth.banner.Banner>
Image类
public class Mapp extends Application {
@Override
public void onCreate() {
super.onCreate();
ImageLoaderConfiguration build = new ImageLoaderConfiguration.Builder(this).build();
ImageLoader instance = ImageLoader.getInstance();
instance.init(build);
}
}
然后 在清单文件中
android:name=".Mapp"
MainActivity代码
网络
private Banner banner;
String[] urls = {"https://ss0.bdstatic.com/70cFuHSh_Q1YnxGkpoWK1HF6hhy/it/u=2310514390,3580363630&fm=27&gp=0.jpg",
"https://ss0.bdstatic.com/70cFuHSh_Q1YnxGkpoWK1HF6hhy/it/u=756318500,1648332548&fm=27&gp=0.jpg",
"https://ss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=764856423,3994964277&fm=27&gp=0.jpg",
"https://img-my.csdn.net/uploads/201407/26/1406383265_8550.jpg",
"http://img4.imgtn.bdimg.com/it/u=1956283034,3979465440&fm=200&gp=0.jpg",
"http://img1.imgtn.bdimg.com/it/u=232043804,3867273473&fm=26&gp=0.jpg"};
banner = findViewById(R.id.main_banner);
final ImageLoader instance = ImageLoader.getInstance();
banner.setImageLoader(new com.youth.banner.loader.ImageLoader() {
@Override
public void displayImage(Context context, Object path, ImageView imageView) {
instance.displayImage((String) path,imageView);
}
});
/*banner.setImages(Arrays.asList(urls));
//设置样式,里面有很多种样式可以自己都看看效果
mBanner.setBannerStyle(BannerConfig.CIRCLE_INDICATOR_TITLE);
//设置图片加载器
mBanner.setImageLoader(mMyImageLoader);
//设置轮播的动画效果,里面有很多种特效,可以都看看效果。
mBanner.setBannerAnimation(Transformer.ZoomOutSlide);
//轮播图片的文字
mBanner.setBannerTitles(imageTitle);
//设置轮播间隔时间
mBanner.setDelayTime(3000);
//设置是否为自动轮播,默认是true
mBanner.isAutoPlay(true);
//设置指示器的位置,小点,居中显示
mBanner.setIndicatorGravity(BannerConfig.CENTER);
//设置图片加载地址
mBanner.setImages(imagePath)
//轮播图的监听
.setOnBannerListener(this)
//开始调用的方法,启动轮播图。
.start();*/
banner.setImages(Arrays.asList(urls ));
banner.start();
/**
* 轮播图的监听 OnBannerClick
*
*/
}
本地图片
private Banner mBanner;
private ArrayList<Integer> imagePath;
mMyImageLoader = new MyImageLoader();
mBanner = findViewById(R.id.banner);
//放入图片
imagePath.add R.drawable.lun1);
imagePath.add(R.mipmap.lun2);
imagePath.add(R.mipmap.lun3);
//设置图片加载器
banner.setImageLoader(new com.youth.banner.loader.ImageLoader() {
@Override
public void displayImage(Context context, Object path, ImageView imageView) {
Glide.with(context.getApplicationContext())
.load(path)
.into(imageView);
}
});
//设置轮播间隔时间
banner.setDelayTime(3000);
//设置是否为自动轮播,默认是true
banner.isAutoPlay(true);
//设置指示器的位置,圆点,居中显示
banner.setIndicatorGravity(BannerConfig.CENTER);
//设置图片加载地址
mBanner.setImages(imagePath)
//开始调用的方法,启动轮播图。
.start();