自定义封装 banner 组件,供大家参考,具体内容如下
1. 效果图预览
2.基本功能
一个简单方便的轮播图组件,基于vIEwpager 基础上进行的封装。
可设置 项目中图片,网络图片, VIEw;
支持循环自动播放,手势滑动切换,item点击事件,可设置 点点的样式宽高、颜色、大小、位置 ;
可设置蒙层;可设置 是否允许滑动;可设置 是否允许循环。
3.基本实现
1). 自定义属性
<declare-styleable name="BannerLayoutStyle"> <attr name="maskStartcolor" format="color|reference" /> <attr name="maskEndcolor" format="color|reference" /> <attr name="selectedindicatorcolor" format="color|reference" /> <attr name="unSelectedindicatorcolor" format="color|reference" /> <attr name="indicatorShape" format="enum"> <enum name="rect" value="0" /> <enum name="oval" value="1" /> </attr> <attr name="selectedindicatorHeight" format="dimension|reference" /> <attr name="selectedindicatorWIDth" format="dimension|reference" /> <attr name="unSelectedindicatorHeight" format="dimension|reference" /> <attr name="unSelectedindicatorWIDth" format="dimension|reference" /> <attr name="indicatorposition" format="enum"> <enum name="centerBottom" value="0" /> <enum name="rightBottom" value="1" /> <enum name="leftBottom" value="2" /> <enum name="centertop" value="3" /> <enum name="righttop" value="4" /> <enum name="lefttop" value="5" /> </attr> <attr name="indicatorSpace" format="dimension|reference" /> <attr name="indicatormargin" format="dimension|reference" /> <attr name="autoplayDuration" format="integer|reference" /> <attr name="scrollDuration" format="integer|reference" /> <attr name="isAutoplay" format="boolean" /> <attr name="defaultimage" format="integer|reference" /> <attr name="isIndicatorVisible" format="boolean" /> <attr name="cornerRadii" format="dimension|reference" /> </declare-styleable>
2).基本方法
//添加本地图片路径public voID setVIEwRes(List<Integer> vIEwRes) {。。。}//添加网络图片路径public voID setVIEwUrls(List<String> urls) {。。。}//添加任意VIEw视图private voID setVIEws2(final List<VIEw> vIEws) {。。。}
// 设置是否允许 循环 public voID setLoop(boolean loop) { } // 设置是否可以滑动 public voID setSlIDeable(boolean slIDeable) { }
更多用法 详见代码,这里就不全部粘贴了。
3).使用示例:
<com.dzq.Widget.CustomBannerVIEw androID:ID="@+ID/banner" androID:layout_wIDth="match_parent" androID:layout_height="wrap_content" androID:layout_weight="1" app:autoplayDuration="2000" app:defaultimage="@drawable/bg_banner" app:indicatormargin="@dimen/indicatormargin" app:indicatorposition="rightBottom" app:indicatorShape="oval" app:indicatorSpace="@dimen/indicatorSpace" app:isAutoplay="true" app:isIndicatorVisible="true" app:scrollDuration="1000" app:selectedindicatorcolor="@color/color_ec407a" app:selectedindicatorHeight="5dp" app:selectedindicatorWIDth="5dp" app:unSelectedindicatorcolor="@color/color_71d9e7" app:unSelectedindicatorHeight="5dp" app:unSelectedindicatorWIDth="5dp" /> <com.dzq.Widget.CustomBannerVIEw androID:ID="@+ID/banner2" androID:layout_wIDth="match_parent" androID:layout_height="wrap_content" androID:layout_margintop="5dp" androID:layout_weight="1" app:autoplayDuration="2000" app:defaultimage="@drawable/bg_banner" app:indicatormargin="@dimen/indicatormargin" app:indicatorposition="rightBottom" app:indicatorShape="rect" app:indicatorSpace="@dimen/indicatorSpace" app:isAutoplay="false" app:isIndicatorVisible="true" app:scrollDuration="1000" app:selectedindicatorcolor="@color/color_ec407a" app:selectedindicatorHeight="5dp" app:selectedindicatorWIDth="10dp" app:unSelectedindicatorcolor="@color/color_71d9e7" app:unSelectedindicatorHeight="10dp" app:unSelectedindicatorWIDth="5dp" /> <com.dzq.Widget.CustomBannerVIEw androID:ID="@+ID/banner3" androID:layout_wIDth="match_parent" androID:layout_height="wrap_content" androID:layout_margintop="5dp" androID:layout_weight="1" app:cornerRadii="5dp" app:indicatormargin="@dimen/indicatormargin" app:indicatorposition="centertop" app:indicatorShape="rect" app:indicatorSpace="@dimen/indicatorSpace" app:isAutoplay="false" app:isIndicatorVisible="true" app:maskEndcolor="#00000000" app:maskStartcolor="#99000000" app:scrollDuration="1000" app:selectedindicatorcolor="#00CAA9" app:selectedindicatorHeight="10dp" app:selectedindicatorWIDth="25dp" app:unSelectedindicatorcolor="#26000000" app:unSelectedindicatorHeight="10dp" app:unSelectedindicatorWIDth="10dp" />
项目源码下载
导入自己项目
How to
To get a Git project into your build:
Step 1. Add the JitPack repository to your build file
Add it in your root build.gradle at the end of repositorIEs:
allprojects { repositorIEs { ... maven { url 'https://jitpack.io' } } }
Step 2. Add the dependency
dependencIEs { compile 'com.github.dingzuoqiang:CustomBannerVIEw:v1.0'}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程小技巧。
总结以上是内存溢出为你收集整理的Android自定义封装banner组件全部内容,希望文章能够帮你解决Android自定义封装banner组件所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)