Android广告图片轮播控件
Android广告图片轮播控件
youth5201314 发表于1年前
Android广告图片轮播控件
  • 发表于 1年前
  • 阅读 97
  • 收藏 1
  • 点赞 0
  • 评论 0

腾讯云 新注册用户 域名抢购1元起>>>   

摘要: Android广告图片轮播控件,支持无限循环和5种主题,可以灵活设置轮播样式、时间、位置、图片加载框架等!

Android图片轮播控件 (如果对你有帮助请star哦!)


传送门

>https://github.com/youth5201314/banner

现在的绝大数app都有banner界面,实现循环播放多个广告图片和手动滑动循环等功能。因为ViewPager并不支持循环翻页, 所以要实现循环还得需要自己去动手,所以其他的轮播控件大多都是重写viewpager,而且代码很臃肿。 我就把项目中的控件剔了出来,希望大家觉得有用。

效果图

模式图片
指示器模式效果示例
数字模式效果示例
数字加标题模式效果示例
指示器加标题模式效果示例

##Gradle

dependencies{
    compile 'com.youth.banner:banner:1.1.6'  //指定版本
    compile 'com.youth.banner:banner:+' //最新版本
}

或者引用本地lib

compile project(':banner')

常量

方法名描述
BannerConfig.NOT_INDICATOR不显示指示器和标题
BannerConfig.CIRCLE_INDICATOR显示圆形指示器
BannerConfig.NUM_INDICATOR显示数字指示器
BannerConfig.NUM_INDICATOR_TITLE显示数字指示器和标题
BannerConfig.CIRCLE_INDICATOR_TITLE显示圆形指示器和标题
BannerConfig.LEFT指示器居左
BannerConfig.CENTER指示器居中
BannerConfig.RIGHT指示器居右

##方法 |方法名|描述 |---|---| |setBannerStyle(int bannerStyle)| 设置轮播样式(默认为Banner.NOT_INDICATOR) |setIndicatorGravity(int type)| 设置指示器位置(没有标题默认为右边,有标题时默认左边) |isAutoPlay(boolean isAutoPlay)| 设置是否自动轮播(默认自动) |setBannerTitle(String[] titles)| 设置轮播要显示的标题和图片对应(如果不传默认不显示标题) |setDelayTime(int time)| 设置轮播图片间隔时间(默认为2000) |setImages(Object[]/List<?> imagesUrl)| 设置轮播图片(所有设置参数方法都放在此方法之前执行) |setImages(Object[]/List<?> imagesUrl,OnLoadImageListener listener)| 设置轮播图片,并且自定义图片加载方式 |setOnBannerClickListener(this)|设置点击事件,下标是从1开始 |setOnBannerImageListener(this)|设置图片加载事件,可以自定义图片加载方式

##使用步骤 * 更多用法请下载demo

1.在布局文件中添加Banner,可以设置自定义属性

  • 简单使用
<com.youth.banner.Banner
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/banner"
    android:layout_width="match_parent"
    android:layout_height="高度自己设置" />
  • 深度自定义,xml扩展属性
  • !!!! 有些属性和方法有重复的地方,完全是为了考虑不同人的习惯
<com.youth.banner.Banner
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/banner"
    android:layout_width="match_parent"
    android:layout_height="高度自己设置"
    app:default_image="默认加载图片"
    app:delay_time="轮播间隔时间"
    app:is_auto_play="是否自动轮播"
    app:indicator_margin="指示器之间的间距"
    app:indicator_drawable_selected="指示器选中效果"
    app:indicator_drawable_unselected="指示器未选中效果"
    app:indicator_height="指示器圆形按钮的高度"
    app:indicator_width="指示器圆形按钮的宽度" />

2.在Activity或者Fragment中配置Banner

private Banner banner;
String[] images= new String[] {"url"};
String[] titles=new String[]{"标题"};
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    banner = (Banner) findViewById(R.id.banner);
    //一步搞定,设置图片就行了
    banner.setImages(images);
 
}

共有 人打赏支持
粉丝 0
博文 1
码字总数 748
×
youth5201314
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: