XBanner的简单使用轮播
导入依赖
implementation 'jp.wasabeef:glide-transformations:3.0.1'
implementation 'com.xhb:xbanner:1.2.2'
implementation 'com.nineoldandroids:library:2.4.0'
XBanner控件的部分属性
| 属性名 | 属性说明 | 属性值 |
|---|---|---|
| isAutoPlay | 是否支持自动轮播 | boolean类型,默认为true |
| autoPlayTime | 图片轮播事件间隔 | int类型,默认5000ms |
| pointNormal | 指示器未选中时的状态 | drawable类型,不指定的话使用默认状态点 |
| pointSelect | 指示器选中时的状态 | drawable类型,不指定的话使用默认状态点 |
| pointsVisible | 是否显示指示器 | boolean类型,默认为true |
| pointsPosition | 指示点位置 | CENTER、LEFT、RIGHT,默认CENTER |
| pointsContainerBackground | 指示器条背景 | color类型、drawable类型、mipmap类型等 |
| pointContainerPosition | 指示器条位置 | TOP、BOTTOM,默认BOTTOM |
| pointContainerLeftRightPadding | 指示点容器左右内间距 | dimension类型,默认10.0dip |
| pointTopBottomPadding | 指示点上下内间距 | dimension类型,默认6.0dip |
| pointLeftRightPadding | 指示点左右内间距 | dimension类型,默认3.0dip |
| tipTextColor | 提示文字的颜色 | reference类型 |
| tipTextSize | 提示文字的大小 | dimension类型,默认10.0dp |
布局代码:
<com.stx.xhb.xbanner.XBanner
android:id="@+id/fragment_curricula_lunbo"
android:layout_width="match_parent"
android:layout_height="200dp"
android:layout_below="@+id/layout"> </com.stx.xhb.xbanner.XBanner>
Activity:
// 初始化XBanner中展示的数据
final ArrayList<String> images = new ArrayList<>();
for (int i = 0; i <homeBanner.size() ; i++) {
images.add(homeBanner.get(i).getBannerUrl());
} // 为XBanner绑定数据
fragment_curricula_lunbo.setData(images, null);
// XBanner适配数据
fragment_curricula_lunbo.setmAdapter(new XBanner.XBannerAdapter() {
@Override
public void loadBanner(XBanner banner, View view, int position) {
Glide.with(getActivity()).load(images.get(position)).into((ImageView) view);
}
});
// 设置XBanner的页面切换特效
fragment_curricula_lunbo.setPageTransformer(Transformer.Default);
// 设置XBanner页面切换的时间,即动画时长
fragment_curricula_lunbo.setPageChangeDuration(1000);
Activity生命周期联动:
@Override
public void onResume() {
super.onResume();
fragment_curricula_lunbo.startAutoPlay();
} @Override
public void onStop() {
super.onStop();
fragment_curricula_lunbo.stopAutoPlay();
}
XBanner的简单使用轮播的更多相关文章
- 最简单的轮播广告(原生JS)
改变每个图片的opacity属性:来自学友刘斌 素材图片: <!DOCTYPE html> <html lang="en"> <head> &l ...
- html学习之路--简单图片轮播
一个简单的图片轮播效果 photo.html页面代码,基本的HTML结构,在main中显示图片,此处图片依次命名为1.jpg.2.jpg.3.jpg.4.jpg. <!DOCTYPE html& ...
- <day006>bootstrap的简单学习 + 轮播图
任务1:bootstrap的简单学习 <!DOCTYPE html> <html lang="zh-CN"> <head> <meta c ...
- 最最最简单的轮播图(JQuery)
html: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...
- jQuery之制作简单的轮播图效果
[源代码] 链接:https://pan.baidu.com/s/1XpZ66D9fmSwWX3pCnGBqjA 密码:w104 [整体构思] 这个轮播图使用的是jQuery,所以Js的整体代量比较少 ...
- 用jQuery实现简单的简单的轮播图
图片来源 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF- ...
- 原生js实现一个简单的轮播图
想锻炼一下自己的原生js能力可以从写一个轮播图开始,轮播图的运用想必大家都知道吧,好了废话不多说,开始记笔记了,一些需要注意的点,我都在代码中标注了 首先是构造html: <div id=&qu ...
- jquery制作一个简单的轮播
效果图: 演示地址: http://ae6623.cn/demo/slider/index.html 思路: 利用css的定位属性 left 进行调整图片的显示,每次点击上一页下一页按钮的时候,-图片 ...
- JQuery手写一个简单的轮播图
做出来的样式: 没有切图,就随便找了一些图片来实现效果,那几个小星星萌不萌. 这个轮播图最主要的部分是animate(),可以先熟悉下这个方法. 代码我放到了github上,链接:https://gi ...
随机推荐
- 来,带你鸟瞰 Java 中4款常用的并发框架!
1. 为什么要写这篇文章 几年前 NoSQL 开始流行的时候,像其他团队一样,我们的团队也热衷于令人兴奋的新东西,并且计划替换一个应用程序的数据库. 但是,当深入实现细节时,我们想起了一位智者曾经说过 ...
- tensorflow 1.0 学习:卷积层
在tf1.0中,对卷积层重新进行了封装,比原来版本的卷积层有了很大的简化. 一.旧版本(1.0以下)的卷积函数:tf.nn.conv2d conv2d( input, filter, strides, ...
- 一款超人气代码格式化工具prettier
一.prettier 介绍 官方自己介绍说,prettier是一款强势武断的代码格式化工具,它几乎移除了编辑器本身所有的对代码的操作格式,然后重新显示.就是为了让所有用这套规则的人有完全相同的代码.在 ...
- HTTPS过程以及详细案例
1.HTTPS的过程 1.客户端向服务端发送请求,客户端主要向服务器提供以下信息: 支持的协议版本,比如TLS 1.0版. 一个客户端生成的随机数,稍后用于生成"对话密钥". 支持 ...
- 解决 VS2017 打断点无效
打断点无效 断点显示白色,鼠标移上去,提示:The breakpoint will not currently be hit. No Symbols have been loaded for this ...
- 详细介绍MySQL/MariaDB的锁
官方手册:https://dev.mysql.com/doc/refman/5.7/en/innodb-locking-transaction-model.html 1.事务提交的方式 在MariaD ...
- QApplication:No such file or directory 错误解决
首先打开 Makefile 文件,查看其中 INCPATH 变量的值是否包含程序中所涉及到的头文件路径. MAKEFILE = Makefile ####### Compiler, tools and ...
- Redis基础认识及常用命令使用(一)--技术流ken
Redis简介 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合)和zset(有序集 ...
- 连接MySQL的10060错误:Can't connect to MySQL server on '*.*.*.*'(10060)
使用MySQL的图形界面管理工具Navicat for MySQL连接Mysql数据库时提示错误:Can't connect to MySQL server (10060) [出现该问题可能的原因:] ...
- 【译】微型ORM:PetaPoco
PetaPoco是一款适用于.Net 和Mono的微小.快速.单文件的微型ORM. PetaPoco有以下特色: 微小,没有依赖项……单个的C#文件可以方便的添加到任何项目中. 工作于严格的没有装饰的 ...