android studio进度条的应用,Android Studio实现进度条效果
本文实例为大家分享了Android Studio实现进度条效果的具体代码,供大家参考,具体内容如下
实验作业 要求一个进度条,进度随机
效果图
xml代码
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context=".ProgressBarActivity">
android:id="@+id/pb_determinate"
android:layout_width="match_parent"
android:layout_height="wrap_content"
style="@android:style/Widget.ProgressBar.Horizontal"
android:backgroundTint="@color/purple_200"
android:progress="25"
android:max="100"
android:layout_centerVertical="true"
/>
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="ProgressBar"
android:textSize="28sp"
android:gravity="center"
android:layout_below="@+id/pb_determinate"
/>
java代码
package com.example.a18101352;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.widget.ProgressBar;
import java.util.Random;
public class MainActivity extends AppCompatActivity {
private ProgressBar progressBar;
private int maxProgress;
private int currentProgress = 0;
private Handler mHandler = new Handler(){
/**
* Subclasses must implement this to receive messages.
*
* @param msg
*/
@Override
public void handleMessage(@NonNull Message msg) {
super.handleMessage(msg);
switch (msg.what){
case 0:
progressBar.setProgress(currentProgress);
break;
}
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_progress_bar);
progressBar = findViewById(R.id.pb_determinate);
maxProgress = progressBar.getMax();
}
@Override
protected void onStart(){
super.onStart();
new Thread() {
private Random random;
@Override
public void run(){
while(true){
try {
for(int i = 0; i < maxProgress; ++i){
//间隔一秒
Thread.sleep(1000);
random = new Random();
// currentProgress += 10;
// if(currentProgress > maxProgress){
// break;
// }
//获取一个随机数给到currentProgress然后显示出来
currentProgress = random.nextInt(100);
mHandler.sendEmptyMessage(0);
}
}
catch (InterruptedException e){
e.printStackTrace();
}
}
}
}.start();
}
}
线程里的for循环可以去掉,循环是测试定时加长进度条设计的。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
android studio进度条的应用,Android Studio实现进度条效果相关推荐
- android studio创建md,如何在Android Studio中设置*md文件打开方式
最近在Android Studio中写一些Demo的时候,会顺便在里面创建一个.md文件用来进行Demo笔记的书写.然而Android Studio不带有markdown预览功能,所以我就琢磨如何在A ...
- Android 自定义View实现环形带刻度颜色渐变的进度条
上次写了一篇Android 自定义View实现环形带刻度的进度条,这篇文章就简单了,只是在原来的基础上加一个颜色渐变. 按照惯例,我们先来看看效果图 一.概述 1.相比于上篇文章,这里我们的颜色渐变主 ...
- Android开发案例教程吴志祥,Android应用开发案例教程(Android Studio版)
本书内容浅显易懂,可操作性强.全书共分9章,第1-7章详细介绍了Android Studio基础知识,包括Android UI设计.Activity与多个用户界面.多媒体播放与录制.广播与服务.数据存 ...
- 《Android 移动应用基础教程(Android Studio)(第2版)》【课本客观题】+【学习通2023春】【参考答案】
文章目录 超星学习通智能终端软件开发(基于Android Studio环境)章节作业(39) 一 二 三 四 五 六 课本一 课本二 课本三 课本四 课本五 课本六(无) 课本七 课本八 课本九 课本 ...
- Android实战技巧之十一:Android Studio和Gradle
2019独角兽企业重金招聘Python工程师标准>>> 经过两个多月的AS体验,我认为是时候将Android的开发环境迁移到AS上了.目前最新版本是1.0.2(大年30当天升级到1. ...
- 基于Android平台的记事本软件(Android Studio项目+报告+app文件)
移动应用开发技术 期末考核报告 题 目: 基于Android平台的记事本软件 学生姓名 学生学号 ...
- android开发课程表app数据库,基于Android studio 的课程表增删查改功能(基于sqlite)
[实例简介]Android studio 用SQLite实现课程表的增删查改功能,:实现详情浏览.编辑.及新增功能.课程编号可以实现正则检查(编号规则XX00000,XX表示两位大写的字母,00000 ...
- Android如何实现地图定位?Android studio+百度地图API+Android6.0系统实现地图显示、地址设置、点击地图定位功能(详细)
文章说明:本文初衷是为了记录毕设学习过程,避免忘记操作流程.该功能是毕业设计的Android软件端的功能之一,本文将从获取百度地图密钥(AK)开始,详细地对地图定位配置和相关代码进行说明,文末将附上实 ...
- Android小项目之--前台界面与用户交互的对接 进度条与拖动条(附源码)
都知道水果公司(苹果)是己尊重用户体验著称的公司,其设计的产品人性化十足,不得不令后来者赞叹,竞相模仿.iphone的成功就是其典型的案例,做为其移动系统的死对头 Google 想要在市场上分得一杯羹 ...
最新文章
- 第2关:计算二叉树的深度和节点个数
- Java集合工具类(三)-泛型集合工具类,用于便捷快速的定义、操作集合。包含Set的交集、并集......
- oracle imp 00028,oracle中导入.dmp文件时出现IMP-00009 和IMP-00028异常提示
- Node.js EventEmitter
- SAP物料价格评估与成本计算体系
- golang map源码分析
- 虚拟机vmware的连接方式以及IP端口,协议等概念
- mysql循环load data_TP5框架下MySQL通过LOAD DATA INFILE批量导入数据详细操作
- 手淘促活那些事儿 | 智能投放算法框架助力用户增长
- SpringBoot 2 集成微信扫码支付
- Ansible(一)工作架构和原理
- 从编写c语言源程序到运行,c语言 源代码到可执行程序的过程
- 每个极客都应该知道的Linux技巧(区分开普通的Linux用户和超级极客)
- wifi信号强度测试软件 mac,Wifi Signal Strength for Mac(无线WiFi信号强度统计软件)
- 《一次失败沟通后的自我觉察》
- word转html制作操作手册,Word文档转换为HTML帮助文档操作手册范本.pdf
- 【实验技术笔记】基因沉默:siRNA/shRNA
- android 格林尼治标准时间的 格式转换 (String To Date) 报错 java.text.ParseException: Unparseable date
- 关于pandas的时间序列中的freq频率参数如何设置的官方参考说明【以date_range方法中的freq参数举例】
- Android 获取图片尺寸大小的方法
热门文章
- 在虚拟机里安装centos 6.4和centos 5.8里配置vim 7.4安装过程
- 计蒜客——学生成绩查找系统
- Alluxio2.X简要介绍
- f.readline()的奇妙坑点
- sv_labs学习笔记——sv_lab5_上(System Verilog)
- mysql sql 限制条数据类型_数据库的数据类型和约束条件
- mfc 学习的第二天
- 安卓nfs网络文件服务器,Linux网络文件服务器 NFS
- 关于网站注册账号时提示Server 对象 错误 'ASP 0177 : 800401f3'
- oracle共享内存段手工清理