阅读量:140
要使用AlertDialog.Builder显示进度条,请按照以下步骤操作:
- 首先确保您的项目中已经导入了
androidx.appcompat:appcompat和androidx.core:core库。如果没有,请在build.gradle文件中添加依赖项:
dependencies {
implementation 'androidx.appcompat:appcompat:版本号'
implementation 'androidx.core:core:版本号'
}
- 在您的Activity或Fragment中创建一个方法,例如
showProgressDialog(),并在其中设置AlertDialog和进度条:
private void showProgressDialog() {
AlertDialog.Builder builder = new AlertDialog.Builder(this);
ProgressBar progressBar = new ProgressBar(this);
builder.setView(progressBar);
builder.setCancelable(false); // 设置为false,使对话框无法被取消
AlertDialog alertDialog = builder.create();
alertDialog.show();
}
- 在需要显示进度条的地方调用
showProgressDialog()方法。例如,当您开始一个耗时操作时:
new Thread(new Runnable() {
@Override
public void run() {
// 执行耗时操作
try {
Thread.sleep(3000); // 假设操作需要3秒
} catch (InterruptedException e) {
e.printStackTrace();
}
// 操作完成后,回到主线程更新UI
runOnUiThread(new Runnable() {
@Override
public void run() {
// 关闭进度条对话框
AlertDialog alertDialog = getAlertDialog();
if (alertDialog != null && alertDialog.isShowing()) {
alertDialog.dismiss();
}
}
});
}
}).start();
// 显示进度条对话框
showProgressDialog();
这样,当耗时操作开始时,会显示一个包含进度条的AlertDialog。操作完成后,进度条将自动消失。