XML属性
|
说明
|
android:max
|
设置该进度条的最大值
|
android:progress
|
设置该进度条的已完成进度值
|
android:progressDrawable
|
设置该进度条的轨道的绘制形式
|
android:indeterminate
|
该属性设为true,设置进度条不精确显示进度
|
android:indeterminateDrawable
|
设置绘制不显示进度的进度条的Drawable对象
|
android:indeterminateDuration
|
设置不精确显示进度的持续时间
|
布局管理器:
- <?xml version="1.0" encoding="utf-8"?>
- <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:orientation="vertical"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- >
- <ProgressBar
- android:id="@+id/progressBar1"
- style="@android:style/Widget.ProgressBar.Horizontal"
- android:layout_width="match_parent"
- android:layout_height="wrap_content" />
- <ProgressBar
- android:id="@+id/progressBar2"
- style="@android:style/Widget.ProgressBar.Horizontal"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:progressDrawable="@drawable/mybar"/>
- </LinearLayout>
进度条需要条用setProgress(status)方法改变进度:
- import android.app.Activity;
- import android.os.Bundle;
- import android.widget.ProgressBar;
- public class AndroidtestActivity12 extends Activity {
- private int status=0;
- @Override
- public void onCreate(Bundle savedInstanceState)
- {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main12);
- final ProgressBar pb=(ProgressBar) findViewById(R.id.progressBar1);
- final ProgressBar pb2=(ProgressBar) findViewById(R.id.progressBar2);
- //声明一个线程,循环改变进度条
- new Thread(){
- @Override
- public void run() {
- while (status<100) {
- status=dowork();
- pb.setProgress(status);
- pb2.setProgress(status);
- }
- }
- }.start();
- }
- //设置线程sleep停止100毫秒,status加1
- private int dowork(){
- status+=1;
- try {
- Thread.sleep(100);
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
- return status;
- }
- }