写一个自己定义进度颜色和圆形转动的ProgressBar(具体介绍)
先上图:
我们得自己定义ProgressBar的样式
<span style="white-space:pre"> </span><style name="self_define_ProgressBar" parent="@android:style/Widget.ProgressBar.Horizontal"> //继承了android横向的ProgressBar的样式
<item name="android:indeterminateOnly">false</item>
<item name="android:progressDrawable">@drawable/self_define_progress</item>
</style>
<?xml version="1.0" encoding="UTF-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@android:id/background" > //定义的是背景色
<shape>
<corners android:radius="5dip" />
<gradient android:angle="270" android:centerColor="#efefef"
android:centerY="0.75" android:endColor="#a3a3a3"
android:startColor="#c7c7c7" />
</shape>
</item> <item android:id="@android:id/secondaryProgress"> //假设有2级进度,须要定义这一项,gradient定义的是渐变色,clip假设没有的话,进度条会充满整个Progessbar
<clip>
<shape>
<corners android:radius="5dip" />
<gradient android:angle="270" android:centerColor="#99CC99"
android:centerY="0.75" android:endColor="#99CC99"
android:startColor="#99CC99" />
</shape>
</clip>
</item> <item android:id="@android:id/progress"> //这个是定义1级进度,假设1级进度比2级进度大且1级进度不透明。就能够覆盖掉2级进度
<clip>
<shape>
<corners android:radius="5dip" />
<gradient android:angle="270" android:centerColor="#4abbfd"
android:centerY="0.75" android:endColor="#4abbfd"
android:startColor="#4abbfd" />
</shape>
</clip>
</item> </layer-list>
在代码里这样使用:
private ProgressBar mProgressBar;
private Task mTask = new Task();
private int mCount = 0;
private Handler mHander = new MyHandler(); @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.activity_main);
mProgressBar = (ProgressBar)findViewById(R.id.progress);
Timer timer = new Timer();
timer.schedule(mTask, 1000, 1000);
} private class MyHandler extends Handler{ @Override
public void handleMessage(Message msg) {
mCount += 10;
mProgressBar.setProgress(mCount);
super.handleMessage(msg);
}
} private class Task extends TimerTask{ @Override
public void run() {
mHander.sendEmptyMessage(10);
}
}
对于圆形并有转圈动画的进度条:shape的值(rectagle矩形,oval椭圆,line水平直线。ring环形) tpye的值:渐变的样式 liner线性渐变 radial环形渐变 sweep
<? xml version="1.0" encoding="utf-8"?>
<rotate xmlns:android="http://schemas.android.com/apk/res/android"
android:pivotX="50%"
android:pivotY="50%"
android:fromDegrees="0"
android:toDegrees="360"> <shape
android:shape="ring"<span style="font-family:verdana, ms song, 宋体, Arial, 微软雅黑, Helvetica, sans-serif;color:#666666;"><span style="font-size: 14px; line-height: 18px;">
</span></span> android:innerRadiusRatio="3"
android:thicknessRatio="8"
android:useLevel="false"> <size
android:width="37dip"
android:height="37dip"
/> <gradient
android:type="sweep"//type为sweep为环形转圈
android:useLevel="false"
android:startColor="#F7F7F7"
android:centerColor="#F7F7F7"
android:centerY="0.50"
android:endColor="#B3B4B4"
/> </shape> </rotate>
写一个自己定义进度颜色和圆形转动的ProgressBar(具体介绍)的更多相关文章
- python递归练习:生成一个n级深度的字典,例如:[1,2,3,4,5,6] 可以生成{1: {2: {3: {4: {6: 5}}}}},写一个函数定义n级
结果#encoding = utf-8#题目:#生成一个n级深度的字典,例如:[1,2,3,4,5,6] 可以生成{1: {2: {3: {4: {6: 5}}}}},写一个函数定义n级a=[1,2, ...
- 使用VB6写一个自定义的进度信息框窗口
一.起因说明 之前有些项目是用Access完成的,当时为了给用户显示一些进度信息,自制了一个进度信息窗体,类似下图所示: 随着项目不断变迁,需要将进度信息按阶段及子进度进行显示,并且出于代码封装的需求 ...
- 使用sys模块写一个软件安装进度条
import sys,time for i in range(50): sys.stdout.write('#') sys.stdout.flush() #强制刷新将内存中的文件写一条,输出一条. t ...
- android怎样写一个自己定义的dialog能够在Title的位置弹出来
先上效果图: Title的Layout为: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/andr ...
- 自己定义进度条PictureProgressBar——从开发到开源公布全过程
自己定义进度条PictureProgressBar--从开发到开源公布全过程 出处: 炎之铠邮箱:yanzhikai_yjk@qq.com 本文原创.转载请注明本出处! 本项目JCenter地址:ht ...
- 用python的time库写一个进度条
运算符 算数运算 如a=10,b=20 +两个数相加 a+b=30 -两个数相减 a-b=-10 两个数相乘 a****b =200 /两个数相除b/a=2 %取模,并返回余数b%a=0 幂,a*** ...
- 转---写一个网页进度loading
作者:jack_lo www.jianshu.com/p/4c93f5bd9861 如有好文章投稿,请点击 → 这里了解详情 loading随处可见,比如一个app经常会有下拉刷新,上拉加载的功能,在 ...
- 改变滚动条的原始样式: chrome 可以改变, IE只能变相关颜色,firfox好像也不好改。最好是自己写一个或是用插件
相关作者链接地址: https://www.lyblog.net/detail/314.html 问题: 1.我在项目中遇到的问题: 在设置了::-webkit-scrollbar 后,滚动条不见了! ...
- 写一个网页进度loading
作者:jack_lo www.jianshu.com/p/4c93f5bd9861 如有好文章投稿,请点击 → 这里了解详情 loading随处可见,比如一个app经常会有下拉刷新,上拉加载的功能,在 ...
随机推荐
- php连接数据库
<?php header('Content-Type:text/html; charset=utf-8'); define('DB_HOST', 'localhost'); define('DB ...
- Android Capture Android System Audio
项目需要获取播放视频的实时音量值,最简捷的方法是监听音频输出端,取得音频输出流,再进行转换. 调查时,首先找到这篇博客: http://blog.csdn.net/jinzhuojun/article ...
- Python线程
原文出处: AstralWind 1. 线程基础 1.1. 线程状态 线程有5种状态,状态转换的过程如下图所示: 1.2. 线程同步(锁) 多线程的优势在于可以同时运行多个任务(至少感觉起来是这样). ...
- asp.net mvc下文件上传
典型的文件上传表单 <form action="/File" enctype="multipart/form-data" method="pos ...
- gson在java和json串之间的应用
public class JsonToJavaUtil { /** * 将json转成成javaBean对象 * * @param <T> * 返回类型 * @param json * 字 ...
- (转)QR二维码生成及原理
二维码又称QR Code,QR全称Quick Response,是一个近几年来移动设备上超流行的一种编码方式,它比传统的Bar Code条形码能存更多的信息,也能表示更多的数据类型:比如:字符,数字, ...
- elang 字符处理
%%% %%% 判断是否是字符串 %%% 从文件中提取中文 %%% %%% %%% %%-------------------------------------------------------- ...
- 隐藏StatusBar 非setStatusBarHidden
UIWindow * window = [[UIApplication sharedApplication].windows lastObject]; 隐藏 [window setWindowLeve ...
- 在IIS 中如何配置URL Rewrite,并且利用出站规则保持被重写的Cookie的域
Url Rewrite配置 xx.aa.com/bb/test1.aspx 会重写到 bb.aa.com/test1.aspx 具体怎么配置入站 出站规则 结果:
- 原生JS默认设置默认值的写法
json=json||{};json.type=json.type||'get';json.data=json.data||{};json.time=json.time||2000;