[Android]ProgressBar进度条

news2024/11/20 4:25:57

ProgressBar


ProgressBar是进度条控件,ProgressBar的应用场景很多,比如用户登录时,后台发送请求,以及进行等待服务器返回信息等一些比较耗时的操作。这个时候如果没有提示,用户可能会以为程序崩溃了或手机死机了,会大大降低用户体验,所有在需要进行耗时操作的地方,添加上进度条,让用户知道当前的程序正在执行,也可以直观地告诉用户当前任务的执行进度。

ProgressBar控件的使用


在布局文件中添加控件

<ProgressBar
        android:id="@+id/progressBar"
        android:layout_width="match_parent"
        android:layout_height="match_parent"/>

我们可以通过设置其style属性更改ProgressBar控件的样式(如条形,环形)

 

 ProgressBar控件的属性


ProgressBar控件在使用过程中,经常会使用到以下属性

属性名称描述
max进度条最大值
progress进度条已完成进度值
indeterminate如果设置成true,则进度条不精确显示进度
indeterminateDrawable如果不显示进度的进度条的Drawable对象
indeterminateDuration设置不精确显示进度的持续条件
progressDrawable设置轨道对应的Drawable对象

系统提供的进度条


    <!--系统提供的圆形进度条,依次是小,中,大 -->
    <ProgressBar
        android:id="@+id/progressBar"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        style="?android:attr/progressBarStyleSmall"/>
    <ProgressBar
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
       />
    <ProgressBar
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        style="?android:attr/progressBarStyleLarge"/>
    <!--系统提供的水平进度条-->
    <ProgressBar
        style="@style/Widget.AppCompat.ProgressBar.Horizontal"
        android:progress="18"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        />
    <ProgressBar
        style="@style/Widget.AppCompat.ProgressBar.Horizontal"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:indeterminate="true"
        />

ProgressBar控件的visibility属性使用


在使用ProgressBar控件时,我们经常要控制它的消失和显示,这时可以设置visibility属性。visibility属性的值如下:

visible:表示控件可见。

invisible:表示控件不可见,但会占用原来的位置和大小。

gone:表示控件不可见,但不会占用原来的位置和大小。

val progressBar:ProgressBar=findViewById(R.id.progressBar)
        if(progressBar.visibility== View.VISIBLE){
            //设置为可见的状态
            progressBar.visibility=View.GONE
        }else{
            //设置为不可见的状态,并且不占用任何空间位置
            progressBar.visibility=View.VISIBLE
        }

ProgressBar自定义菊花加载


   <ProgressBar
        android:id="@+id/progressBar"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:indeterminateDrawable="@drawable/rotate"
       />
<?xml version="1.0" encoding="utf-8"?>
<animated-rotate xmlns:android="http://schemas.android.com/apk/res/android"
    android:drawable="@drawable/pg"
    android:pivotX="50%"
    android:pivotY="50%"
    android:fromDegrees="0"
    android:toDegrees="360">
</animated-rotate>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/191390.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【数据结构】1.2 数据结构的基本概念和术语

文章目录1. 数据、数据元素、数据项和数据对象2. 数据结构逻辑结构的种类存储结构的种类3. 数据类型和抽象数据类型数据类型抽象数据类型概念小结1. 数据、数据元素、数据项和数据对象 数据&#xff08;Data&#xff09; 能输入计算机且能被计算机处理的各种符号的集合。 信息…

AcWing1074. 二叉苹果树(树形DP +分组背包)

AcWing1074. 二叉苹果树&#xff08;树形DP 分组背包&#xff09;一、问题二、分析1、状态表示2、状态转移3、循环设计三、代码一、问题 二、分析 这道题是一个在数上做分组背包问题的模型&#xff0c;那么为什么是分组背包呢&#xff1f;作者在之前的文章中进行过详细地讲解&…

VUE2常用知识

1、Vue的基本原理 【】当一个Vue实例创建时&#xff0c;Vue会遍历data中的属性&#xff0c;用 Object.defineProperty&#xff08;vue3.0使用proxy &#xff09;将它们转为 getter/setter&#xff0c;并且在内部追踪相关依赖&#xff0c;在属性被访问和修改时通知变化。 每个组…

工时管理:按工作时间还是完成的任务来跟踪员工的生产力?

据中国社科院的一项调查显示&#xff1a;我国有86%的职场人都患有拖延症&#xff1b;50%的人不到最后一刻绝不开始工作&#xff1b;13%的人没有人催不能完成工作。 拖延症对小型或成长型企业的影响是很大的&#xff0c;毕竟&#xff0c;任务永远不会因为逃避或简单地坐在那里而…

【Linux】信号保存、信号处理、可重入函数、volatile关键字、SIGCHLD信号

目录 一、信号保存 1.1 信号相关的概念名词 1.2 在内核中的表示 1.3 sigset_t与操作函数 1.4 信号设定 二、信号处理 2.1 内核空间与用户空间 2.2 内核态和用户态 2.3 信号的捕捉流程 2.4 sigaction 函数 三、可重入函数 四、volatile 五、SIGCHLD信号 一、信号保…

当今主流的网络服务应用

文件传输协议 主机之间传输文件是IP网络的一个重要功能&#xff0c;如今人们可以方便地使用网页、邮箱进行文件传输。 然而在互联网早期&#xff0c;Web&#xff08;World Wide Web&#xff0c;万维网&#xff09;还未出现&#xff0c;操作系统使用命令行的时代&#xff0c;…

webpack前端应用之基础打包

目录 前言&#xff1a;初识 Webpack 5 一、前端工程化 1、webpack ​ &#xff08;2&#xff09;主要功能&#xff1a; 2、webpack的使用&#xff1a;配置文件所需要的信息&#xff08;五大配置属性&#xff09; 3、示例 强调&#xff1a; 4、webpack中使用的loader 二…

【Java基础】003 -- Java基础概念(计算机的存储规则)

目录 计算机的存储规则 1、什么是二进制&#xff1f; 2、为什么计算机要使用二进制存储数据&#xff1f; 3、进制之间可以转换吗&#xff1f; 4、码表&#xff08;Text文本&#xff09; 5、图片数据 6、声音数据 计算机的存储规则 在计算机中&#xff0c;任意的数据都是…

java集成RSA非对称加密数据传输

使用场景: 前端请求后端接口时如:登录接口,这时候需要传账号密码到后端接口请求这样就会暴露请求的数据。RSA非对称加密分公钥和私钥,公钥将数据进行加密,私钥对加密的数据进行解密 (当然前端最好是封装一下不要暴露出来公钥) 代码实现: 1、RSA工具类(或访问http:…

大数据舆情监控应用平台,TOOM大数据舆情监控系统的作用

大数据舆情监控应用是利用大数据技术对社会舆情的收集、分析、挖掘和展示的工具。它通常会收集和分析各种社交媒体、新闻媒体、博客等信息&#xff0c;以了解舆情动态和趋势。大数据舆情监控应用可以帮助企业和政府了解市场和社会动态&#xff0c;为决策提供支持。然而&#xf…

聚观早报 |比亚迪预计去年营收超4200亿元;美股三大指数集体收跌

今日要闻&#xff1a;比亚迪预计去年营收超 4200 亿元&#xff1b;美股三大指数集体收跌&#xff1b;王凤英正式加入小鹏汽车出任总裁&#xff1b;苹果计划在印度生产 25% 的 iPhone 手机&#xff1b;LVMH老板放狠话坚决打击代购行为比亚迪预计去年营收超 4200 亿元 1 月 30 日…

(Java高级教程)第四章必备前端基础知识-第三节3:JavaScript之DOM和BOM

文章目录一&#xff1a;WebAPI概述二&#xff1a;DOM&#xff08;1&#xff09;获取元素&#xff08;2&#xff09;事件&#xff08;3&#xff09;操作元素A&#xff1a;获取&#xff08;修改&#xff09;元素内容B&#xff1a;获取&#xff08;修改&#xff09;元素属性C&…

LeetCode 刷题系列 -- 108. 将有序数组转换为二叉搜索树

给你一个整数数组 nums &#xff0c;其中元素已经按 升序 排列&#xff0c;请你将其转换为一棵 高度平衡 二叉搜索树。高度平衡 二叉树是一棵满足「每个节点的左右两个子树的高度差的绝对值不超过 1 」的二叉树。示例 1&#xff1a;输入&#xff1a;nums [-10,-3,0,5,9]输出&a…

粒子群优化(PSO)算法例题实现

目录 一、实验要求 二、算法流程 三、案例实现及结果 完整程序&#xff1a; 一、实验要求 二、算法流程 粒子群算法流程&#xff1a; 1、初始化&#xff1a;初始化粒子群&#xff1b;给每个粒子赋予初始位置和速度 2、计算适应值&#xff1a;根据适应度函数&#xff0c;计…

新范式+新标准=世界级产品|StarRocks年度总结

岁序常易&#xff0c;华章日新。虎年即将落幕&#xff0c;雄关漫道&#xff0c;我们携手社区斗志昂扬&#xff0c;并肩虎跃雄关。兔年新岁将至&#xff0c;黎明破晓&#xff0c;我们协力社区蓄势待发&#xff0c;昂首共赴新程。值此送虎迎兔的新春佳节之际&#xff0c;感恩与St…

电子技术——MOS放大器的DC偏置

电子技术——MOS放大器的DC偏置 正如前几节我们学习的&#xff0c;MOS放大器的小信号模型的参数取决于正确的DC偏置&#xff0c;这个步骤称为偏置设计。一个好的偏置设计要满足一个稳定的漏极DC电流 IDI_DID​ 和设置正确的 VDSV_{DS}VDS​ 保证MOS管在放大信号的时候处在饱和区…

Qt StyleSheet介绍

文章目录前言纠错技巧可以使用 , 号来同时指明多个同一类型控件的样式表qss注释前言 本文主要以这篇博客为基础。添加一些自己使用的心得和使用样式表的一些技巧 纠错 ID选择器这里类型选择器可以省略&#xff0c;因为每个控件的objectName是不一样的&#xff0c;所以无需指定…

高性能消息队列中间件MQ

毕业后工作半年&#xff0c;在自己的讲课中需要介绍消息队列&#xff0c;以前在大学也有经常接触message queen&#xff0c;但却还不够深入了解掌握&#xff0c;这次写个专门针对mq的文章理清头绪。 以下是学习mq的知识框架&#xff0c;我会不定时更新补充 RabbitMQ概念_MQ 消…

TwinCAT3串口通讯EL6021模块使用-和串口调试助手自由协议通讯

目录 一、简介 二、环境介绍 三、接线连接 四、创建TwinCAT3程序工程 1、IO扫描和参数设置 2、创建PLC程序 &#xff08;1&#xff09;库文件添加 &#xff08;2&#xff09;创建任务和程序 &#xff08;3&#xff09;变量关联 &#xff08;4&#xff09;重新激活工程、运…

adb的一些基本操作

adb的一些基本操作 Android使用的系统一般是debian系列操作系统&#xff0c;所以使用adb shell连接到手机后&#xff0c;可以使用大部分Debian系列的命令进行相关的操作 列出所有应用&#xff1a;adb shell pm list packages 列出第三方(系统)应用&#xff1a;adb shell pm li…