屬性參考github :https://github.com/youth5201314/banner
1. 項目的Gradle 中加入
//添加歡迎引導頁的Banner輪播 implementation 'com.youth.banner:banner:1.4.10'
2. 佈局文件中的使用。
<com.youth.banner.Banner android:id="@+id/home_play_banner" android:layout_width="match_parent" android:layout_height="@dimen/base150dp" android:layout_gravity="center_horizontal" android:layout_marginLeft="@dimen/base15dp" android:layout_marginRight="@dimen/base15dp" mlp:indicator_width = "@dimen/base10dp" mlp:indicator_height = "@dimen/base10dp" mlp:indicator_margin = "@dimen/base3dp" />
3. 代碼中使用。
public class MyFragment extends Fragment { @BindView(R.id.banner) Banner banner; private List<String> mTitleList = new ArrayList<>(); private List<Integer> mImgList = new ArrayList<>(); @Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { View view = View.inflate(getActivity(), R.layout.fragment_my, null); ButterKnife.bind(this, view); // 注意的地方。Fragment中 控件引入,。 BannerSet(); // 設置輪播圖。 return view; } private void BannerSet() { mImgList.add(R.drawable.books_image_1); mImgList.add(R.drawable.books_image_2); mImgList.add(R.drawable.books_image_3); mImgList.add(R.drawable.books_image_4); mTitleList.clear(); for (int i = 0; i < mImgList.size(); i++) { mTitleList.add("第"+ i + "張圖片"); }
banner.setBannerStyle(BannerConfig.CIRCLE_INDICATOR_TITLE_INSIDE); // 顯示圓形指示器和標題(水平顯示 //設置圖片加載器 banner.setImageLoader(new MyLoader()); //設置圖片集合 banner.setImages(mImgList); //設置banner動畫效果 banner.setBannerAnimation(Transformer.DepthPage); //設置標題集合(當banner樣式有顯示title時) banner.setBannerTitles(mTitleList); //設置自動輪播,默認爲true banner.isAutoPlay(true); //設置輪播時間 banner.setDelayTime(1500); //設置指示器位置(當banner模式中有指示器時) banner.setIndicatorGravity(BannerConfig.CENTER); //banner設置方法全部調用完畢時最後調用 banner.start();
// setOnBannerClickListener 1.4.9 以後就廢棄了 。 setOnBannerListener 是1.4.9以後使用。
banner.setOnBannerListener(new OnBannerListener() { @Override public void OnBannerClick(int position) { UIUtils.showToast("第"+ position +"張輪播圖點擊了!"); } });
}}
4. 圖片加載器
public class MyLoader extends ImageLoader { @Override public void displayImage(Context context, Object path, ImageView imageView) { Glide.with(context).load(path).into(imageView); } }
5.屬性介紹: