vProgressBar:进度条组件主要用于在进行长时间处理操作时显示进度使用户不会感觉程序失去响应,提高界面的友好性。
v可以通过style属性控制进度条的风格:
@android:style/Widget.ProgressBar.Horizontal:水平进度条
@android:style/Widget.ProgressBar.Inverse:普通大小进度条
@android:style/Widget.ProgressBar.Large:大进度条
@android:style/Widget.ProgressBar.Large.Inverse:大进度条
@android:style/Widget.ProgressBar.Small:小进度条
@android:style/Widget.ProgressBar.Small.Inverse :小进度条

 进度条组件的属性

XML属性
说明
android:max
设置该进度条的最大值
android:progress
设置该进度条的已完成进度值
android:progressDrawable
设置该进度条的轨道的绘制形式
android:indeterminate
该属性设为true,设置进度条不精确显示进度
android:indeterminateDrawable
设置绘制不显示进度的进度条的Drawable对象
android:indeterminateDuration
设置不精确显示进度的持续时间

 

布局管理器:

  1. <?xml version="1.0" encoding="utf-8"?> 
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
  3. android:orientation="vertical" 
  4. android:layout_width="fill_parent" 
  5. android:layout_height="fill_parent" 
  6. > 
  7.  
  8.         <ProgressBar 
  9.             android:id="@+id/progressBar1" 
  10.             style="@android:style/Widget.ProgressBar.Horizontal" 
  11.             android:layout_width="match_parent" 
  12.             android:layout_height="wrap_content" /> 
  13.           
  14.         <ProgressBar   
  15.             android:id="@+id/progressBar2" 
  16.             style="@android:style/Widget.ProgressBar.Horizontal" 
  17.             android:layout_width="match_parent" 
  18.             android:layout_height="wrap_content" 
  19.             android:progressDrawable="@drawable/mybar"/> 
  20. </LinearLayout> 

ProgressBar进度条_休闲

进度条需要条用setProgress(status)方法改变进度:

  1. import android.app.Activity;  
  2. import android.os.Bundle;  
  3. import android.widget.ProgressBar;  
  4.  
  5. public class AndroidtestActivity12 extends Activity {  
  6.     private int status=0;  
  7.     @Override 
  8.     public void onCreate(Bundle savedInstanceState)  
  9.     {  
  10.             super.onCreate(savedInstanceState);  
  11.             setContentView(R.layout.main12);  
  12.             final ProgressBar pb=(ProgressBar) findViewById(R.id.progressBar1);  
  13.             final ProgressBar pb2=(ProgressBar) findViewById(R.id.progressBar2);  
  14.             //声明一个线程,循环改变进度条      
  15.             new Thread(){  
  16.                     @Override 
  17.                     public void run() {  
  18.                         while (status<100) {  
  19.                             status=dowork();  
  20.                             pb.setProgress(status);  
  21.                             pb2.setProgress(status);  
  22.                         }  
  23.                     }  
  24.                 }.start();  
  25.     }  
  26.     //设置线程sleep停止100毫秒,status加1  
  27.     private int dowork(){  
  28.         status+=1;  
  29.         try {  
  30.             Thread.sleep(100);  
  31.         } catch (InterruptedException e) {  
  32.             e.printStackTrace();  
  33.         }  
  34.           
  35.         return status;  
  36.     }