BannerView-無限輪播圖控件

輪播圖控件,封裝ViewPager,支持無限循環輪播,支持三種常用頁面特效,支持設置指示器,支持自動切換手動滑動和自動滑動的滑動時長,封裝Banner的Holder實現更加簡單。使用Kotlin開發,在項目中使用,滿足大部分Banner相關需求,可以直接使用。

本項目基于MZBannerView進行二次開發,只用于開源交流,如果侵權等問題請及時提醒。

預覽

BannerView

使用方法

  1. 在項目根目錄的build.gradle文件中添加jitpack倉庫

     allprojects {
         repositories {
             maven { url 'https://jitpack.io' }
         }
     }
    
  2. 在application的build.gradle文件中引入倉庫依賴

     dependencies {
          implementation 'com.github.PingerOne:BannerView:1.0.5'
     }
    
  3. 在xml文件中引用BannerView控件

     <com.fungo.banner.BannerView
         android:id="@+id/bannerView"
         android:layout_width="match_parent"
         android:layout_height="200dp"
         app:bannerAutoLoop="true"
         app:bannerPageMode="cover"
         app:bannerPageScale="0.9"
         app:bannerPageAlpha="0.6"
         app:bannerFarMargin="10dp"
         app:bannerCoverMargin="10dp"
         app:bannerPagePadding="20dp"
         app:indicatorVisible="true"
         app:indicatorAlign="right"
         app:indicatorPaddingLeft="12dp"
         app:indicatorPaddingBottom="12dp"
         app:indicatorPaddingRight="12dp"/>
    
  4. 在代碼中設置數據和適配器

     bannerView.setPages(data, object : BannerHolderCreator<BannerBean, BannerHolder> {
          override fun onCreateBannerHolder(): BannerHolder {
              return BannerHolder()
          }
      })
    

常用屬性

Name Format Description
bannerAutoLoop Boolean 是否開啟自動輪播
bannerPageMode Int 頁面模式
bannerPageScale Float 左右頁面的縮放比例
bannerPageAlpha Float 左右頁面的透明度
bannerFarMargin Dimension 遠離模式下左右頁面的外邊距
bannerCoverMargin Dimension 覆蓋模式下左右頁面的內邊距
bannerPagePadding Dimension 中間頁面距離左右的距離
indicatorVisible Boolean 指示器是否可見
indicatorAlign Int 指示器的位置
indicatorPaddingLeft Int 指示器距離左側的距離
indicatorPaddingRight Int 指示器距離右側的邊距
indicatorPaddingTop Int 指示器距離頂部的邊距
indicatorPaddingBottom Int 指示器距離底部的邊距

參考


歡迎大家訪問我的簡書博客GitHub


項目地址
下載APK
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容