Android中progressdialog的用法是什么

小億
87
2023-08-03 09:44:33

ProgressDialog是Android中的一個(gè)對(duì)話框,用于在后臺(tái)任務(wù)執(zhí)行時(shí)顯示進(jìn)度條。

ProgressDialog的用法如下:

  1. 創(chuàng)建ProgressDialog對(duì)象:
ProgressDialog progressDialog = new ProgressDialog(context);
  1. 設(shè)置ProgressDialog的樣式和屬性:
progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER); // 設(shè)置進(jìn)度條樣式,可選樣式有:STYLE_HORIZONTAL,STYLE_SPINNER
progressDialog.setTitle("Loading"); // 設(shè)置對(duì)話框標(biāo)題
progressDialog.setMessage("Please wait..."); // 設(shè)置對(duì)話框內(nèi)容
progressDialog.setCancelable(false); // 設(shè)置是否可以通過(guò)點(diǎn)擊對(duì)話框外部取消對(duì)話框
  1. 顯示和隱藏ProgressDialog:
progressDialog.show(); // 顯示對(duì)話框
progressDialog.dismiss(); // 隱藏對(duì)話框
  1. 更新ProgressDialog的進(jìn)度:
progressDialog.setProgress(50); // 設(shè)置進(jìn)度條的當(dāng)前進(jìn)度,只有在STYLE_HORIZONTAL樣式下才有效
  1. 在后臺(tái)任務(wù)執(zhí)行過(guò)程中更新進(jìn)度:
class MyTask extends AsyncTask<Void, Integer, Void> {
@Override
protected Void doInBackground(Void... voids) {
for (int i = 0; i <= 100; i++) {
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
publishProgress(i); // 更新進(jìn)度
}
return null;
}
@Override
protected void onProgressUpdate(Integer... values) {
super.onProgressUpdate(values);
progressDialog.setProgress(values[0]);
}
}

以上就是ProgressDialog的基本用法,可以根據(jù)實(shí)際需求進(jìn)行定制和擴(kuò)展。

0