標籤:
java類代碼:
1 //普通進度對話方塊 2 public void bt8_onClick(View v) 3 { 4 final ProgressDialog progressDialog = new ProgressDialog(this); 5 progressDialog.setMessage("請等待……"); 6 progressDialog.setTitle("進度對話方塊"); 7 progressDialog.setCancelable(false); 8 progressDialog.show(); 9 //不要寫業務代碼10 //開啟子線程11 //實現多線程:1.繼承 2.實現介面12 //1.繼承Thread,重寫run方法,再調用start()方法13 new Thread(){14 @Override15 public void run() { //{}內表示繼承16 //業務代碼17 try {18 //延時 線程19 Thread.sleep(3000);20 }21 catch (Exception e)22 {23 24 }25 //執行完業務代碼26 //關閉27 progressDialog.dismiss();28 }29 }.start();//{}start負責啟動子線程,自動執行run()方法30 }31 //水平進度對話方塊32 public void bt9_onClick(View v)33 {34 final ProgressDialog progressDialog = new ProgressDialog(this);35 progressDialog.setTitle("水平進度對話方塊");36 progressDialog.setMessage("正在載入……");37 progressDialog.setCancelable(false);38 //設定成水平39 progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);40 progressDialog.show();41 42 final TextView tv_2 = (TextView)findViewById(R.id.tv_2);43 44 //啟動子線程 實習介面 Runnable,run()45 new Thread(new Runnable() {46 @Override47 public void run() {48 //類比進度變化49 for (int i = 0; i <=100; i++){50 progressDialog.setProgress(i);51 try {52 //延時 線程53 Thread.sleep(200);54 }55 catch (Exception e)56 {57 58 }59 }60 //在子線程裡訪問UI線程的View61 runOnUiThread(new Runnable() {62 @Override63 public void run() {64 65 tv_2.setText("下載完成");66 }67 });68 progressDialog.dismiss();69 }70 }).start();71 }
注意開啟多線程的方法
附思維導圖:
Android——進度對話方塊