Android中輪播框架Banner

**

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);
    }
mBanner.startAutoPlay();//開始輪播
 mBanner.stopAutoPlay();//結束輪播

效果圖,方便實用在這裏插入圖片描述

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