github:?https://github.com/pinguo-zhouwei/MZBannerView
本文主要記錄使用方法
封裝輪子:MZBannerView
MZBannerView 有以下功能:
1 . 仿魅族BannerView 效果。
2 . 當(dāng)普通Banner 使用
3 . 當(dāng)普通ViewPager 使用。
4 . 當(dāng)普通ViewPager使用(有魅族Banner效果)
自定義屬性
屬性名屬性意義取值
open_mz_mode是否開啟魅族模式true 為魅族Banner效果,false 則普通Banner效果
canLoop是否輪播true 輪播,false 則為普通ViewPager
indicatorPaddingLeft設(shè)置指示器距離左側(cè)的距離單位為 dp 的值
indicatorPaddingRight設(shè)置指示器距離右側(cè)的距離單位為 dp 的值
indicatorAlign設(shè)置指示器的位置有三個取值:left 左邊,center 劇中顯示,right 右側(cè)顯示
通過open_mz_mode和canLoop這兩個屬性來控制MZBannerView 是用作Banner還是普通ViewPager,有4種組合方式
1,仿魅族BannerView(默認(rèn)的模式)
app:open_mz_mode="true"app:canLoop="true"
2, 普通BannerView
app:open_mz_mode="false"app:canLoop="true"
3 ,普通ViewPager (有魅族Banner的切換動畫)
app:open_mz_mode="true"app:canLoop="false"
4, 普通ViewPager
app:open_mz_mode="false"app:canLoop="false"
使用方法:
1 . xml 布局文件
2 . activity中代碼:

3 .如果是當(dāng)Banner使用,注意在onResume 中調(diào)用start()方法,在onPause中調(diào)用 pause() 方法。如果當(dāng)普通ViewPager使用,則不需要。

其他對外API

因為是對ViewPager的包裝,所有要設(shè)置某些ViewPager的屬性,可以通過getViewPager 獲取到ViewPager再設(shè)置對應(yīng)屬性
實際使用過程:需要實現(xiàn)一個無限循環(huán)橫向滑動并且頁面等比顯示三個item且添加點擊事件
修改內(nèi)容如下:
在MZBannerView類中獲取到ViewPager,對ViewPager的設(shè)置padding,將padding動態(tài)設(shè)置成屏幕寬度的三分之一(此處注意設(shè)置padding不可更換為設(shè)置setMargins,雖也可實現(xiàn)頁面,但點擊事件無法獲?。?,使用時將MZBannerView設(shè)置為仿魅族BannerView(默認(rèn)的模式)

--------END------
我是靜染星辰,私人微信:azxy986753
歡迎添加微信,互相學(xué)習(xí),互相進(jìn)步!