ProcessBar 与SeekBar进度条
1.进度条关键属性

2.进度条的常用方法
progress = (ProgressBar) findViewById(R.id.horiz);
(1)获取第一进度条:progress.getProgress();
(2)获取第二进度条:progress.getSecondaryProgress();
(3)获取最大进度条:progress.getMax();
(4)增加进度条刻度:progress.incrementProgressBy(10);
减少进度条刻度,就把参数改为负数
课程Demo
public class MainActivity extends Activity implements OnClickListener {
private ProgressBar progress;
private Button add;
private Button reduce;
private Button reset;
private TextView text;
private ProgressDialog prodialog;
private Button show;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 启用窗口特征,启用带进度和不带进度的进度条
requestWindowFeature(Window.FEATURE_PROGRESS);
requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS);
//加载布局文件
setContentView(R.layout.main);
// 显示两种进度条
setProgressBarVisibility(true);//带进度
setProgressBarIndeterminateVisibility(false);//不带进度
// Max=10000
setProgress(9999);
init();
}
private void init() {
// TODO Auto-generated method stub
progress = (ProgressBar) findViewById(R.id.horiz);
add = (Button) findViewById(R.id.add);
reduce = (Button) findViewById(R.id.reduce);
reset = (Button) findViewById(R.id.reset);
text = (TextView) findViewById(R.id.text);
show=(Button) findViewById(R.id.show);
show.setOnClickListener(this);
// 获取第一进度条的进度
int first = progress.getProgress();
// 获取第二进度条的进度
int second = progress.getSecondaryProgress();
// 获取进度条的最大进度
int max = progress.getMax();
text.setText("第一进度百分比:" + (int) (first / (float) max * 100)
+ "% 第二进度百分比:" + (int) (second / (float) max * 100) + "%");
add.setOnClickListener(this);
reduce.setOnClickListener(this);
reset.setOnClickListener(this);
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
switch (v.getId()) {
case R.id.add: {
// 增加第一进度和第二进度10个刻度
progress.incrementProgressBy(10);
progress.incrementSecondaryProgressBy(10);
break;
}
case R.id.reduce: {
// 减少第一进度和第二进度10个刻度
progress.incrementProgressBy(-10);
progress.incrementSecondaryProgressBy(-10);
break;
}
case R.id.reset: {
progress.setProgress(50);
progress.setSecondaryProgress(80);
break;
}
case R.id.show:
{
/**
* 页面显示风格
*/
//新建ProgressDialog对象
prodialog=new ProgressDialog(MainActivity.this);
//设置显示风格
prodialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
//设置标题
prodialog.setTitle("嗨咯");
//设置对话框里的文字信息
prodialog.setMessage("欢迎大家");
//设置图标
prodialog.setIcon(R.drawable.ic_launcher);
/**
* 设定关于ProgressBar的一些属性
*/
//设定最大进度
prodialog.setMax(100);
//设定初始化已经增长到的进度
prodialog.incrementProgressBy(50);
//进度条是明确显示进度的
prodialog.setIndeterminate(false);
/**
* 设定一个确定按钮
*/
prodialog.setButton(DialogInterface.BUTTON_POSITIVE, "确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
Toast.makeText(MainActivity.this, "欢迎大家", Toast.LENGTH_SHORT).show();
}
});
//是否可以通过返回按钮退出对话框
prodialog.setCancelable(true);
//显示ProgressDialog
prodialog.show();
break;
}
}
text.setText("第一进度百分比:"+ (int) (progress.getProgress() / (float) progress.getMax() * 100)+ "% 第二进度百分比:"
+ (int) (progress.getSecondaryProgress()/ (float) progress.getMax() * 100) + "%");
}
}
SeekBar基本属性与上面相同
SeekBar的监听器为OnSeekBarChangeListener
但是自定义SeekBar时,需属性android:thumb="@drawable/my_thumb"
附上my_thumb的配置信息
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/select" android:state_pressed="true" android:state_window_focused="true"/>
<item android:drawable="@drawable/select" android:state_focused="true" android:state_window_focused="true"/>
<item android:drawable="@drawable/select" android:state_selected="true" android:state_window_focused="true"/>
<item android:drawable="@drawable/normal"/>
</selector>
ProcessBar 与SeekBar进度条的更多相关文章
- SeekBar进度条简单案例
SeekBar是进度条.我们使用进度条时,可以使用系统默认的进度条:也可以自定义进度条的图片和滑块图片等 向右拉进度条让图片显示出来 向右拉五角星加载有色进度条 baseSeekBar package ...
- 自定义垂直拖动的seekbar进度条
系统自定义的seekbar为横向拖动的样式,需要纵向的时则需要自己定义,网上很多说了重写系统SeekBar中onDraw()的方法,但是我使用的时候不知道为什么拖动条和点偏离了,不在一条直线上,好气. ...
- 每天一点Android干货-时间与日期、进度条
时间控件TimePicker的使用方法 timePicker.setIs24HourView(true); //设置是否以24小时制显示 timePicker.getCurrentHour(); // ...
- python (大文件下载及进度条展示) 验证客户端链接的合法性,socketserver
##########总结########### 文件校验加进度条显示 ####server import os import json import socket import struct impo ...
- python 全栈开发,Day36(作业讲解(大文件下载以及进度条展示),socket的更多方法介绍,验证客户端链接的合法性hmac,socketserver)
先来回顾一下昨天的内容 黏包现象粘包现象的成因 : tcp协议的特点 面向流的 为了保证可靠传输 所以有很多优化的机制 无边界 所有在连接建立的基础上传递的数据之间没有界限 收发消息很有可能不完全相 ...
- [Android] SeekBar---可拖动进度条
SeekBar---可拖动进度条 ()setMax //设置SeekBar最大数值 ()setProgress //设置SeekBar当前数值 ()setSecondaryProgress//设置Se ...
- Android开发-各种各样好看漂亮的进度条,指示器,加载提示汇总
导读:之前项目中用到一些进度条,找了不少,打算写个demo自己总结一下,留着以后用, 有些是自己写的,有些是github上找的别人的库,如果大家觉得好看可以用,直接下载复制代码到项目里就可以用,ok ...
- 036_python的大文件下载以及进度条展示
复习 1.黏包现象 粘包现象的成因: tcp协议的特点,面向流的,为了保证可靠传输,所以有很多优化的机制. 无边界 所有在连接建立的基础上传递的数据之间没有界限. 收发消息很有可能不完全相等. 缓存机 ...
- 第33讲 UI组件_进度条ProcessBar和消息队列处理器handler
第33讲UI组件_进度条ProcessBar和消息队列处理器handler 1. 进度条ProcessBar 一个可视化的进度指示器,代表正在执行的耗时任务.可以为用户展示一个进度条,表示正在执行的任 ...
随机推荐
- javascript 閉包
這兩種寫法都是可以的. 第一種: function a(){ var m=[]; for(var i=1; i<10; i++){ (function(i){ function b(){ con ...
- 32位win7系统下配置IIS遇到php-cgi.exe - FastCGI 进程意外退出问题的解决的方法
今天重装了一下系统,是32位的WIN7.装完系统后想把IIS装回来,由于有时候须要用到笔记本处理一些事情.结果WEBserver正常了.但IIS的FASTCGI模块始终不能解析PHP,一直报php-c ...
- 我在CSDN开通博客啦!
今天,我最终在CSDN开通博客啦!
- zipfile zip
Python模块学习:zipfile zip文件操作 2015/05/27 · 系列教程 · zipfile 分享到:3 原文出处: DarkBull 最近在写一个网络客户端下载程序,用于下载服 ...
- iOS开发——高级篇——iOS中为什么block用copy属性
1. Block的声明和线程安全Block属性的声明,首先需要用copy修饰符,因为只有copy后的Block才会在堆中,栈中的Block的生命周期是和栈绑定的,可以参考之前的文章(iOS: 非ARC ...
- nohup 程序在后台运营 避免 xshell 卡死 通过 nohup.out分析调取系统命令时的异常分析
nohup 程序在后台运营 避免 xshell 卡死 [root@admin1 after_fc_distributed]# nohup /root/anaconda3/bin/python da ...
- Bootstrap 过渡效果 transition.js源码分析
前言: 阅读建议:去github下载一个完整dom然后把,本篇代码复制进去然后运行就好了以地址 Bootstrap 自带的 JavaScript 插件的动画效果几乎都是使用 CSS 过渡实现的,那么判 ...
- python 矩阵
python的numpy库提供矩阵运算的功能,因此我们在需要矩阵运算的时候,需要导入numpy的包. 1.numpy的导入和使用 from numpy import *;#导入numpy的库函数 im ...
- android EditText如何使光标随着输入内容移动
EditText 使光标随着输入内容移动的setSelection()
- zoj 3023 Light Bulb
题目大意: 求L的最大值 思路: 可以想象出是一个关于人到灯泡距离x的单峰上凸函数 当光线在墙角左边的时候影子在不断增长 然后通过相似可以推出人在墙上影子的长度为:H+D*(h-H)/x 再加上地上的 ...