说明

ProgressBar一般用于显示一个过程,例如数据加载过程,文件下载进度,音乐播放进度等。

默认形式ProgressBar

默认方式下,ProgressBar显示为圆形进度,循环转圈,不显示具体的进度值,控制其显隐藏即可,如下

适用于界面加载

//xml中

android:layout_width="wrap_content"

android:layout_height="wrap_content" />

//代码中控制显隐藏

mProgressBar = (ProgressBar) findViewById(R.id.progress_bar_main);

mProgressBar.setVisibility(View.VISIBLE);

横向ProgressBar

横向带进度的进度条,通过设置ProgressBar的Style为style="?android:attr/progressBarStyleHorizontal"

max属性指定进度条总进度值,progress设置当前进度值,也可以说是初始进度值

//xml中

android:id="@+id/progress_bar_h"

style="?android:attr/progressBarStyleHorizontal"

android:layout_width="85dp"

android:layout_height="10dp"

android:layout_gravity="center"

android:max="100"

android:progress="50"

/>

设进度条背景

系统自带的进度条的颜色比较单调,实际开发中使用较少,可以自定义进度条背景,新建一个progressbar_bg.xml文件

android:drawable="@mipmap/feed_grow_progress_bar">

android:endColor="#fff000"

android:startColor="#fff000" />

gradient可以设置进度条的渐变色, android:endColor和 android:startColor可以设置渐变开始和结束的颜色。定义完成以后,便可以使用

android:id="@+id/progress_bar_healthy"

style="?android:attr/progressBarStyleHorizontal"

android:layout_width="85dp"

android:layout_height="10dp"

android:layout_marginTop="20dp"

android:layout_gravity="center"

android:max="100"

android:progress="50"

android:progressDrawable="@drawable/progressbar_bg"

/>

效果图,这里设置了黄色矩形背景,及黄色进度条

动态设置

在音乐进度,网络下载时,需动态加载进度条,默认情况下,设置进度条,使用setProgress()即可。但有时除了动态设置进度,仍需要动态设置进度条颜色

private void setElectircProgress(int i, int color) {

ClipDrawable drawable = new ClipDrawable(new ColorDrawable(color), Gravity.LEFT, ClipDrawable.HORIZONTAL);

progressBarElectric.setProgressDrawable(drawable);

progressBarElectric.setProgress(i);

}

音乐播放实例

通过MediaPlayer 播放音乐并获取进度,设置进度

musicProgressBar = (ProgressBar) findViewById(R.id.progress_bar_music);

if (mPlayer != null) {

mPlayer.release();

mPlayer = null;

}

mPlayer = MediaPlayer.create(this, R.raw.summer);

mPlayer.start();

musicProgressBar.setMax(mPlayer.getDuration());

if (timer != null) {

timer = null;

timerTask = null;

}

timer = new Timer();

timerTask = new TimerTask() {

@Override

public void run() {

if (mPlayer != null) {

if (mPlayer.isPlaying()) {

runOnUiThread(new Runnable() {

@Override

public void run() {

musicProgressBar.setProgress(mPlayer.getCurrentPosition());

}

});

}

}

}

};

timer.schedule(timerTask, 0, 1000);

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

android进度条课设报告,Android开发之进度条ProgressBar的示例代码相关推荐

  1. 图书管理系统课设报告(含用例图、通信图、顺序图、状态图、活动图)

    这份报告帮助了很多人完成学业,你值得拥有 下载链接:   图书管理系统课程设计报告.docx_图书管理系统课程设计报告,图书管理系统课设报告-互联网文档类资源-CSDN下载 面向对象的系统分析与设计 ...

  2. 计算机组成模型计算机课设总结,计算机组成原理课设报告.doc

    计算机组成原理课设报告 计算机组成原理课程设计报告 班级:物联网 1301 班 姓名: 石杰元 学号: 完成时间: 2016/1/10 一.课程设计目的 1.在实验机上设计实现机器指令及对应的微指令( ...

  3. c语言学生成绩查询课设报告,C语言课设报告(学生考试成绩查询程序)【荐】.doc...

    C语言课设报告(学生考试成绩查询程序)[荐].doc 学生考试成绩查询程序 学号:******** 姓名:***** 完成日期:****年月 通过键盘输入学生的考试信息,包括:学号.姓名.课程名称.学 ...

  4. 嵌入式计算机课程设计,嵌入式系统设计课设报告.doc

    嵌入式系统设计课设报告.doc 福州大学嵌入式系统设计课设报告书题 目 基于28027的虚拟系统 姓 名 学 号 学 院 电气工程与自动化学院 专 业 电气工程与自动化 年 级 起讫日期 指导教师 目 ...

  5. 【014】基于Vue.js的移动端购物商城网站(含源码、课设报告)

    文章目录 一.项目介绍 二.代码及报告获取 一.项目介绍 基于Vue.js的移动端购物商城网站(含源码.课设报告),代码获取放在文末了,码字不易,感谢点赞~ 一.系统概述 本部分主要是对项目进行简要描 ...

  6. 【013】基于Vue的酒店客房管理系统(含管理员、普通用户两种身份(附源码数据库、课设报告)

    这里写目录标题 一.系统详细介绍 二.系统部分设计思路 三.项目获取 一.系统详细介绍 前言: 这次带来的是基于Nodejs+Vue+Mysql的酒店客房管理系统,含非常非常详细的课设报告,觉得物超所 ...

  7. Mysql数据库笔记分享系列--下(内附免费课设报告)

    索引和视图 索引 索引类别 普通索引 唯一性索引 主键索引 全文索引 空间索引 创建索引 1.ALTER TABLE创建索引 #ALTER TABLE用来创建普通索引.UNIQUE索引或PRIMARY ...

  8. [含课设报告+源码等]基于JSP实现的飞机票售票管理系统[包运行成功]

    下载:https://download.csdn.net/download/ll6666668/64026192 项目介绍: [含课设报告+源码等]基于JSP实现的飞机票售票管理系统[包运行成功][含 ...

  9. 数据库课程设计——某煤气公司送气管理系统(附课设报告)

    下面都是我在CSDN发的文章,这算广告???审核你有毛病? 数据库课程设计--某工厂的物料管理系统(附Java源码与课程设计报告) 数据库课程设计--某商店进销存管理系统(附Java源码与课程设计报告 ...

最新文章

  1. spring cloud alibaba版本选择
  2. C++_STL标准库——容器
  3. oracle安装及使用常见错误
  4. 【机器学习】特征降维-特征选择
  5. 关于Visual Studio 2019的前期详情
  6. java 大文件 处理_用Java处理大文件
  7. 电视光端机常见故障问题介绍
  8. 从1天到10分钟的超越,华为云DRS在背后做了这些
  9. android获取错误原因,从http读取数据时发生OutOfMemory错误获取请求android
  10. JPA+Hibernate 3.3 ——第一个JPA程序
  11. 51Nod - 1385 凑数字
  12. 凸优化系列二:确定步长一维搜索算法
  13. Python爬虫下载网易云音乐歌曲
  14. 常见互联网职业英文简写,你是哪个O?
  15. 《宏观经济学》 学习笔记
  16. 【分析】魔兽争霸3的MPQ文件及模型格式分析
  17. Android Tv限制后台进程数量
  18. 蓝桥 卷“兔”来袭编程竞赛专场-05棋盘加密 题解
  19. 智能感知与学习(六):识别系统
  20. 有向无环图—拓扑序列

热门文章

  1. mysql创建表格1warning_MySQLMySQL创建表及相关约束
  2. php中mb substr,php中中文截取函数mb_substr()详细
  3. jatoolsprinter web打印控件直接打印不弹出
  4. JavaCV 学习(一):JavaCV 初体验
  5. 父与子的编程之旅:与小卡特一起学Python.pdf
  6. SQl 根据某列去重 partition by
  7. socket入门教程
  8. datagridview当传递具有已修改行的 DataRow 集合时,更新要求有效的 UpdateCommand。
  9. Android的开机流程及对应源码位置分析
  10. CTO俱乐部下午茶:技术团队管理中的那些事儿