【Android】轮播图——Banner

embedded/2024/11/13 7:05:44/

引言

Banner轮播图是一种在网页和移动应用界面设计中常见的元素,主要用于在一个固定的区域内自动或手动切换一系列图片,以展示不同的内容或信息。这个控件在软件当中经常看到,商品促销、热门歌单、头像新闻等等。它不同于ViewPgaer在于无需手动进行翻页,它会自动进行轮播,但也可手动滑动到你所要看的页面。接下来就来学习轮播图的使用吧!

使用

  1. 导入Banner的依赖
implementation 'io.github.youth5201314:banner:2.2.2'
  1. 进行XML文件的设置
<com.youth.banner.Bannerandroid:id="@+id/banner_text"android:layout_width="match_parent"app:layout_constraintTop_toTopOf="parent"app:layout_constraintStart_toStartOf="parent"android:layout_height="wrap_content"app:banner_loop_time="1000" />

给大家介绍一下Banner的常用属性:

  • 轮播间隔时间(banner_loop_time):这个属性用于设置轮播图的自动切换时间间隔,默认为3000毫秒(3秒)。
  • 是否自动轮播(banner_auto_loop):一个布尔值属性,用于指定轮播图是否自动播放,默认为true。
  • 是否支持无限循环(banner_infinite_loop):另一个布尔值属性,用于指定轮播图是否支持无限循环,即首尾直接过渡,默认为true。
  • 轮播方向(banner_orientation):枚举类型属性,用于指定轮播图的滚动方向,可以是水平(horizontal)或垂直(vertical),默认为水平。
  • Banner圆角半径(banner_radius):用于设置轮播图的圆角半径。
  • 指示器默认宽度(banner_indicator_normal_width):设置指示器未选中时的宽度,默认为5dp(对RoundLinesIndicator无效)。
  • 指示器选中宽度(banner_indicator_selected_width):设置指示器选中时的宽度,默认为7dp。
  • 指示器默认颜色(banner_indicator_normal_color):设置指示器未选中时的颜色,默认为0x88ffffff。
  • 指示器选中颜色(banner_indicator_selected_color):设置指示器选中时的颜色,默认为0x88000000。
  • 指示器之间的间距(banner_indicator_space):设置指示器之间的间距,默认为5dp(对RoundLinesIndicator无效)。
  • 指示器位置(banner_indicator_gravity):设置指示器的位置,默认为中心(center)。
  • 指示器高度(banner_indicator_height):设置指示器的高度(对CircleIndicator无效)。
  • 指示器圆角(banner_indicator_radius):设置指示器的圆角(对CircleIndicator无效)。
  1. 显示轮播图

在活动里面为其添加所要轮播的图片,我们在一开始就觉得Banner与ViewPager很类似,像是加强版,因此在使用的时候也是一样的,先获取控件示例,为其添加适配器,根据我们所要轮播的内容不同,适配器也不同 。(想了解各个适配器可看之前的博客:【Android】ViewPager与ViewPager2之间的区别_androidx.viewpager2.widget.viewpager2-CSDN博客,对不同的适配器有讲解)

Banner本身就已经帮我们做了一个适配器BannerImageAdapter,我们就使用这个适配器实现图片的轮播:

在这里插入图片描述

这就是活动里面的代码了,接下来运行程序,图片就会不停的自动轮播。

文章到这里就结束了!


http://www.ppmy.cn/embedded/136879.html

相关文章

Python学习------第四天

Python的判断语句 一、布尔类型和比较运算符 二、 if语句的基本格式 if语句注意空格缩进&#xff01;&#xff01;&#xff01; if else python判断语句的嵌套用法&#xff1a;

【系统架构设计师】高分论文:论企业应用系统的分层架构风格

更多内容请见: 备考系统架构设计师-专栏介绍和目录 文章目录 摘要正文摘要 2021 年 12 月,本人所在的公司承担了 “某国际贸易综合服务及经济案事件预警平台”(下文简称 “预答平台”)的升级改造工作。我担任本项目的系统架构师,负责该预答平台开发的管理、规划、设计工作…

使用 Flutter 绘制一个棋盘

在这篇博客中&#xff0c;我们将使用 Flutter 的 CustomPainter 来绘制一个简单的棋盘。我们将实现一个 8x8 的棋盘&#xff0c;每个方格的大小和颜色都能根据需求进行自定义。除了代码部分&#xff0c;我们还会详细解释每个步骤和背后的设计理念。 1. 创建 Flutter 项目 首先…

Redis生产问题(缓存穿透、击穿、雪崩)——针对实习面试

目录 Redis生产问题什么是缓存穿透&#xff1f;如何解决缓存穿透&#xff1f;什么是缓存击穿&#xff1f;如何解决缓存击穿&#xff1f;缓存穿透和缓存击穿有什么区别&#xff1f;什么是缓存雪崩&#xff1f;如何解决缓存雪崩&#xff1f; Redis生产问题 什么是缓存穿透&#x…

关系数据的可视化——Python大数据可视化

一、实验名称 关系数据的可视化 二、实验目的 1.掌握关系数据在大数据中的应用 2.掌握关系数据可视化方法 3. python程序实现图表 三、实验原理 在传统的观念里面,一般都是致力于寻找一切事情发生的背后的原因。现在要做的是尝试着探索事物的相关关系,而不再关注难以捉摸的…

十四:java web(6)-- Spring Spring MVC

目录 Spring MVC 1.1 Spring MVC 概述 1.1.1 什么是 MVC 模式 1.1.2 Spring MVC 工作原理 1.2 Spring MVC 核心组件 1.2.1 DispatcherServlet 1.2.2 控制器&#xff08;Controller&#xff09; 1.2.3 请求映射&#xff08;RequestMapping&#xff09; 1.2.4 视图解析器…

计算用户订购率梧桐数据库和oracle数据库sql分析

一、背景说明 移动运营商平台提供多种类型的产品权益&#xff0c;用户可以通过订购来使用。平台需要定期统计各个产品的用户订购情况&#xff0c;以便了解各个产品的受欢迎程度。这些统计数据将用于优化产品、提升用户体验和制定市场推广策略。 二、表结构说明 梧桐数据库建…

有无人机巡检为什么还会再采购巡检管理系统

在现代工业和社会管理中&#xff0c;巡检工作扮演着至关重要的角色。无论是电力线路、油气管道&#xff0c;还是城市基础设施&#xff0c;巡检都是确保其安全、稳定运行的关键环节。随着科技的进步&#xff0c;无人机巡检作为一种新兴的巡检方式&#xff0c;已经逐渐取代了传统…