Android輪播圖 實現方式二: 無限輪播 三方框架banner。(成熟可以直接使用)!

屬性參考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.屬性介紹:



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章