a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 系統 > Android > 正文

Android開發之ProgressDialog進度對話框用法示例

2019-10-21 21:19:18
字體:
來源:轉載
供稿:網友

本文實例講述了Android開發之ProgressDialog進度對話框用法。分享給大家供大家參考,具體如下:

使用方法:

 

如果只是普通進度對話框 直接調用ProgressDialog靜態方法 show() 即可
創建ProgressDialog 調用方法進行具體設置
setIndeterminate(false); 設置進度條是否顯示進度
setMax(MAX_PROGRESS); 設置進度條的最大值
setMessage("..."); 設置對話框執行內容
setProgressStyle(ProgressDialog.STYLE_HORIZONTAL) 設置對話框進度條風格
setProgress() 設置 進度條內的進度值(當前)

 

效果:

Android開發,ProgressDialog,對話框

代碼實現:

主要是兩種類型

1.帶耗時操作  showIndeterminate

2.不帶耗時操作 showProgress

具體實現:

public class MainActivity extends Activity {  final static int MAX_PROGRESS = 100;  //虛擬 填充長度為100的數組  private int[] data = new int[50];  //記錄進度對話框完成百分比  int progressStatus = 0;  int hasDta = 0;  ProgressDialog progressDialog01,progressDialog02;  private Button buttonDate;  private Button buttonTime;  //創建一個負責更新進度的Handler  Handler mHandler = new Handler(){    @Override    public void handleMessage(Message msg) {      //表明消息是本程序發送的      if (msg.what == 0x111){        progressDialog02.setProgress(progressStatus);      }    }  };  @Override  protected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.activity_main);    buttonDate = (Button) findViewById(R.id.dataBn);    buttonTime = (Button) findViewById(R.id.timeBn);    iniClick();//Binding the listeners for you program  }  public void showSpinner(View source){    //用靜態方法顯示環形進度條    ProgressDialog.show(this,"任務執行中","熱內執行中 請等待...",false,true);  }  public void showIndeterminate(View source){    progressDialog01 = new ProgressDialog(MainActivity.this);    //設置對話框標題    progressDialog01.setTitle("任務正在執行中");    //設置對話框執行內容    progressDialog01.setMessage("任務正在執行中敬請等待~~~");    //設置對話框“取消” 按鈕關閉    progressDialog01.setCancelable(true);    //設置對話框進度條風格    progressDialog01.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);    //設置進度條是否顯示進度    progressDialog01.setIndeterminate(true);    progressDialog01.show();  }  public void showProgress(View source){    //將進度條完成重設為0    progressStatus = 0;    //重新開始填充數組    hasDta = 0;    progressDialog02 = new ProgressDialog(MainActivity.this);    progressDialog02.setMax(MAX_PROGRESS);    //設置對話框標題    progressDialog02.setTitle("任務正在執行中");    //設置對話框執行內容    progressDialog02.setMessage("任務正在執行中敬請等待~~~");    //設置對話框“取消” 按鈕關閉    progressDialog02.setCancelable(false);    //設置對話框進度條風格    progressDialog02.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);    //設置進度條是否顯示進度    progressDialog02.setIndeterminate(false);    progressDialog02.show();    new Thread(){//模擬耗時操作      @Override      public void run() {        while (progressStatus < MAX_PROGRESS){          //bar1獲取完成工作的百分比          progressStatus += (int) (Math.random()*15);          try{            Thread.sleep(1000);          }catch (InterruptedException e){            e.printStackTrace();          }          //更新ProgressBar          mHandler.sendEmptyMessage(0x111);        }        //任務完成進度條關閉        progressDialog02.dismiss();      }    }.start();  }  public void iniClick(){    //set listener for your Date button    buttonDate.setOnClickListener(new View.OnClickListener() {      @Override      public void onClick(View v) {        showIndeterminate(MainActivity.this.getWindow().getDecorView());      }    });    //set listener for your Time button    buttonTime.setOnClickListener(new View.OnClickListener() {      @Override      public void onClick(View v) {        showProgress(MainActivity.this.getWindow().getDecorView());      }    });  }}

以下是布局文件:

<?xml version="1.0" encoding="utf-8" ?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  android:id="@+id/idtatabHost"  android:layout_width="match_parent"  android:layout_height="match_parent"  android:orientation="horizontal"  android:layout_weight="1">  <Button    android:id="@+id/dataBn"    android:text="一般進度條"    android:layout_width="0dp"    android:layout_weight="1"    android:layout_height="wrap_content" />  <Button    android:id="@+id/timeBn"    android:text="帶耗時進度條"    android:layout_width="0dp"    android:layout_weight="1"    android:layout_height="wrap_content" /></LinearLayout>

 

希望本文所述對大家Android程序設計有所幫助。


注:相關教程知識閱讀請移步到Android開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 久久亚洲精品中文字幕蜜潮电影 | 免费观看一级毛片 | 成人免费毛片aaaaaa片 | 欧美日韩精品一区 | 福利一区二区在线 | 日韩精品av一区二区三区 | 美国成人在线 | 国产高清在线观看 | 色天天综合久久久久综合片 | 国产成人综合网 | 国产一区二区三区精品久久久 | 亚洲色图偷拍自拍 | 91亚洲视频在线观看 | 在线a视频 | 一级毛片免费观看 | 久久久一区二区 | 久久久久无码国产精品一区 | 亚洲久久| 国产日产久久久久久 | 激情欧美一区二区三区 | 一区不卡| 在线观看污片 | 久久久久久久久久影院 | 在线看片福利 | 欧美日韩中文在线观看 | 精品亚洲一区二区三区在线观看 | 日韩一区二区在线观看 | 国产精品991| 国产无区一区二区三麻豆 | 久久午夜影院 | 久草精品视频 | 午夜免费视频网站 | 成人在线免费视频 | 一区二区久久 | 99精品国产一区二区 | 老司机午夜免费精品视频 | 午夜影院免费版 | 日韩免费视频中文字幕 | 国产91在线播放精品 | 日韩欧美中文在线 | 91高清视频 |