Android之进度条2

我之前有写过一篇“Android之进度条1”,那个是条形的进度条(显示数字进度),这次实现圆形进度条。

点击查看Android之进度条1:http://www.cnblogs.com/caidupingblogs/p/5102745.html>

MainActivity继承Activity实现Runnable接口:

package com.cdp.progressbar;

import android.app.Activity;
import android.os.Bundle;
import android.widget.ProgressBar;
    //使用Runnable接口
public class MainActivity extends Activity implements Runnable {
    //声明一条线程
    private Thread th ;
    //声明一个进度条对象
    private ProgressBar pb ;
     //标识进度值最大最小的状态
    private boolean stateChage;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        //实例进度条对象
        pb = (ProgressBar)findViewById(R.id.porb);
        //实例线程对象
        th = new Thread(this);
        //启动线程
        th.start();
    }

    @Override
    public void run() {//实现Runnable接口抽象函数
        while(true){
            //得到当前进度值
            int current = pb.getProgress();
            //得到进度条的最大进度值
            int currentMax = pb.getMax();
            //得到底层当前进度值
            int secCurrent = pb.getSecondaryProgress();
            //以下代码实现进度值越来越大,越来越小的一个动态效果
            if(stateChage==false){
                if(current>=currentMax){
                    stateChage=true;
                }else{
                    //设置进度值
                    pb.setProgress(current+1);
                    //设置底层进度值
                    pb.setSecondaryProgress(current+1);
                }
            }else{
                if(current<=0){
                    stateChage=false;
                }else{
                    pb.setProgress(current-1);
                    pb.setSecondaryProgress(current-1);
                }
            }
            try {
                Thread.sleep(50);
            } catch (InterruptedException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    }
}

run:

时间: 2024-10-22 20:14:19

Android之进度条2的相关文章

Android自定义进度条样式

最近在做一个widget,上面需要一个progressbar,产品经理和设计师给出来的东西是要实现一个圆角的progress和自定义的颜色,研究一小下,分享出来给大家哦. 测试于:Android4.0+ 操作步骤: 1.创建你的layout文件引用progressbar如下,标红处引用你自定的样式: <ProgressBar android:id="@+id/progressDownload" style="?android:attr/progressBarStyleH

Android自定义进度条-带文本(文字进度)的水平进度条(ProgressBar)

/** * 带文本提示的进度条 */ public class TextProgressBar extends ProgressBar { private String text; private Paint mPaint; public TextProgressBar(Context context) { super(context); initText(); } public TextProgressBar(Context context, AttributeSet attrs, int d

[Android]组件-进度条1

多式样ProgressBar 普通圆形ProgressBar 该类型进度条也就是一个表示运转的过程,例如发送短信,连接网络等等,表示一个过程正在执行中. 一般只要在XML布局中定义就可以了. <progressBar android:id="@+id/widget43" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layou

Android中进度条类型的控件定义和妙用技巧

Android中进度条控件有3个(不算ProgressDialog),分别是ProgressBar,SeekBar和RatingBar,对于自定义样式来说又得按照需求分为2中情况,第一种是刻度型,第二种是循环类型. 第一种是"刻度型",也就是他有起点和终点,起点值小于终点值 这种样式的修改,要修改三个属性即可 分别是:背景(主要是进度的轨道样式),第一级别滚动条progressDrawable,第二级别progressDrawable 遗憾的是Android提供的api很难设置,不过可

android 自定义进度条颜色

先看图 基于产品经理各种自定义需求,经过查阅了解,下面是自己对Android自定义进度条的学习过程!   这个没法了只能看源码了,还好下载了源码, sources\base\core\res\res\  下应有尽有,修改进度条颜色只能找progress ,因为是改变样式,首先找styles.xml 找到xml后,进去找到 [html] view plaincopyprint? <span style="font-size: 18px;">    <style name

android的进度条使用

android的进度条 1.实现的效果 2.布局代码 先写一个my_browser.xml文件 存放WebView <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" a

android 14 进度条和拖动条

进度条: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <ProgressBar 默认进度条 andr

Android loading进度条使用简单总结

在这里,总结一下loading进度条的使用简单总结一下. 一.说起进度条,必须说说条形进度条,经常都会使用到嘛,特别是下载文件进度等等,还有像腾讯QQ安装进度条一样,有个进度总给人良好的用户体验. 先来找图看看,做这个图完成不用图片就可以做到了. 看下xml布局文件,其实就是直接用xml写的在加两个属性设置一下就好了,一个style,另一个是background. <ProgressBar android:id="@+id/pb_progressbar" style="

android ProgressBar 进度条的进度两端是圆角的方法

转自 http://www.jianshu.com/p/6e7ea842d5ce 另外工作原理可以参考http://blog.csdn.net/lan603168/article/details/44705425 ProgressBar 自定义的时候可能会遇到一个问题,希望进度条中的进度的两端都是圆角的(或者进度的末端是圆角的):如下图: progress bar rounder 但是根据自定义的shape 或者是 layer-list却总是很难做到,几乎都是被clip成了直角的样子: prog