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 }