Banner的基本用法
1.導入依賴java
implementation'com.youth.banner:banner:1.4.10'
** 若是使用的是網絡上的圖片還要添加權限**android
<uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
2.在XML文件中添加布局 com.youth.banner.Bannergit
<com.youth.banner.Banner android:id="@+id/banner" android:layout_width="match_parent" android:layout_height="180dp"/>
3.獲取Banner控件github
banner = findViewById(R.id.banner);
4.自定義圖片加載類網絡
static class GlideImageLoader extends ImageLoader{ @Override Public void displayImage(Context context,Object path,ImageView imageView){ //根據使用的圖片加載框架使用相應的加載方法,使用圖片加載框架要加入相應的依賴 //Picasso 加載圖片 //依賴 implementation 'com.squareup.picasso:picasso:2.71828' Picasso.get().load(path).into(imageView); //用fresco加載圖片 //依賴 implementation 'com.facebook.fresco:fresco:0.14.1' Uri uri = Uri.parse((String) path); imageView.setImageURI(uri); //Glide //依賴 implementation 'com.github.bumptech.glide:glide:4.11.0' Glide.with(context).load(path).into(imageView); } }
5.屬性設置
//設置 圖片加載器
banner.setImageLoader(new GlideImageLoader());
//設置圖片集合
banner.setImages(imageUrls);
//設置標題集合
banner.setBannerTitles(titles);
//設置切換時間
banner.setDelayTime(2000);
//設置指示器的位置,小點點,左中右
//banner.setIndicatorGravity(BannerConfig.RIGHT);
//設置內置樣式,共有六種能夠點入方法內逐一體驗使用。
banner.setBannerStyle(BannerConfig.CIRCLE_INDICATOR_TITLE_INSIDE);
//監聽事件
banner.setOnBannerListener(new OnBannerListener() {
@Override
public void OnBannerClick(int position) {
Toast.makeText(MainActivity.this,position+"",Toast.LENGTH_SHORT).show();
}
});
//啓動輪播圖
banner.start();
框架