Android开发入门组件(十三)——ProgressBar

今天来讲一下进度条(其实包含了刷新圈),主要讲基本常用的一些方法,先看一下图片就知道大概要讲的是什么了

Android开发入门组件(十三)——ProgressBar

1.基本的使用方法

默认的进度条是一个旋转的刷新圈,即没有参数的情况下

 <ProgressBar
        android:id="@+id/pb2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="10dp"
        style="@android:style/Widget.ProgressBar"/>

    <ProgressBar
        android:id="@+id/pb3"
        android:layout_width="match_parent"
        android:layout_height="20dp"
        android:layout_marginTop="10dp"
        style="@style/Widget.AppCompat.ProgressBar.Horizontal"
        />

如上的代码写出来是两个转动的圆弧,效果如下:

Android开发入门组件(十三)——ProgressBar

 但是要写一个进度条要怎么写呢

<ProgressBar
        android:id="@+id/pb3"
        android:layout_width="match_parent"
        android:layout_height="20dp"
        android:layout_marginTop="10dp"
        style="@style/Widget.AppCompat.ProgressBar.Horizontal"
        />//进行进度条的风格的设置

    <ProgressBar
        android:id="@+id/pb4"
        android:layout_width="match_parent"
        android:layout_height="20dp"
        android:layout_marginTop="10dp"
        style="@android:style/Widget.ProgressBar.Horizontal"
        android:max="100"   //进度条的最大长度
        android:progress="10"  //进度条的选择长度
        android:secondaryProgress="30"//进度条的第二选择长度/>

需要设置style来换成进度条的风格来进行操作。效果如下:

Android开发入门组件(十三)——ProgressBar

2.进度条的控制函数

举例设置一个button来操作进度条,来进行进度条的进度显示。

bt1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                handler.sendEmptyMessage(0);
            }
        });

Handler handler=new Handler(){
        public void handleMessage(Message msg){
            super.handleMessage((msg));
            if (pb3.getProgress()<100){
               handler.postDelayed(runnable,500);
            }else {
                ToastUtil.showMessage(ProgressActivity.this,"加载完成");
            }
        }
    };

    Runnable runnable=new Runnable() {
        @Override
        public void run() {
            pb3.setProgress(pb3.getProgress()+5);
            handler.sendEmptyMessage(0);
        }
    };

 

 

上一篇:Js拖拉进度条


下一篇:音量调节条-封装通用的ProgressBar组件