首页 > 代码库 > Android ProgressDialog 加载进度

Android ProgressDialog 加载进度

技术分享

 1 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
 2     xmlns:tools="http://schemas.android.com/tools"
 3     android:layout_width="match_parent"
 4     android:layout_height="match_parent" >
 5 
 6     <Button
 7         android:layout_width="wrap_content"
 8         android:layout_height="wrap_content"
 9         android:onClick="progress"
10         android:text="ProgressDialog" />
11 
12 </RelativeLayout>
技术分享
 1 public class MainActivity extends Activity {
 2 
 3     @Override
 4     protected void onCreate(Bundle savedInstanceState) {
 5         super.onCreate(savedInstanceState);
 6         setContentView(R.layout.activity_main);
 7     }
 8     
 9     /**
10      * ProgressDialog是AlertDialog类的子类,可以为一个未定义进度的任务显示一个旋转轮形状的进度动画,
11      * 或者为一个指定进度的任务显示一个进度条。它的用处非常广泛,在每次用户操作一个延迟的任务时,我们都必须以进度对话框的形式告诉用户,
12      * 否则用户并不知道操作已经开始,可能会多次操作同一个任务,并有可能导致异常发生。
13      * @param v
14      */
15 
16     public void progress(View v){
17         final ProgressDialog dialog = new ProgressDialog(this);
18         dialog.setTitle("进度条对话框");
19         dialog.setMessage("正在加载...");
20         //dialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);//旋转轮进度
21         dialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);//水平加载进度条
22         dialog.setMax(200);//默认值100
23         dialog.show();
24         new Thread(){
25             public void run() {
26                 int index = 0;
27                 while(index++ < dialog.getMax()){
28                     dialog.setProgress(index);
29                     try {
30                         Thread.sleep(100);
31                     } catch (InterruptedException e) {
32                         e.printStackTrace();
33                     }
34                 }
35                 //加载完成关闭对话框
36                 if(dialog!=null && dialog.isShowing()){
37                     dialog.dismiss();
38                 }
39             }
40         }.start();
41     }
42 }
MainActivity

 

Android ProgressDialog 加载进度