仿魅族應(yīng)用的廣告BannerView

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)步!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容