java - 进度条对话框关闭后如何显示警报对话框?

标签 java android

我想在进程栏对话框关闭后显示警报对话框(单击 ListView 以显示进程栏): 这是我的代码显示过程栏对话框:

ProgressDialog barProgressDialog;
Handler updateBarHandler;

public void launchBarDialog(View view)
{
    barProgressDialog = new ProgressDialog(MainActivity.this);

    barProgressDialog.setTitle("Processing,please wait ...");
    barProgressDialog.setMessage("Cracking password in progress ...");
    barProgressDialog.setProgressStyle(barProgressDialog.STYLE_HORIZONTAL);
    barProgressDialog.setProgress(0);
    barProgressDialog.setMax(10);
    barProgressDialog.show();

    new Thread(new Runnable() {
        @Override
        public void run() {
            try {

                // Here you should write your time consuming task...
                while (barProgressDialog.getProgress() <= barProgressDialog.getMax()) {

                    Thread.sleep(1000);

                    updateBarHandler.post(new Runnable() {

                        public void run() {

                            barProgressDialog.incrementProgressBy(2);
                          }
                      });
                    if (barProgressDialog.getProgress() == barProgressDialog.getMax()) {
                        barProgressDialog.dismiss();


                    }
                }
            } catch (Exception e) {
            }
        }
    }).start();




}

请发布示例代码。非常感谢!!!

最佳答案

您需要在方法 setOnDismissListener(DialogInterface.OnDismissListener listener):AlertDialog 上实现接口(interface) DialogInterface.OnDismissListener。 它将帮助您完成所需的工作。下面的代码将帮助您完成所需的工作。

ProgressDialog barProgressDialog;
Handler updateBarHandler;

public void launchBarDialog(View view) {
    updateBarHandler = new Handler();
    barProgressDialog = new ProgressDialog(MainActivity.this);
    barProgressDialog.setOnDismissListener(new DialogInterface.OnDismissListener() {

        @Override
        public void onDismiss(DialogInterface dialog) {
            //Put your AlertDialog Here ....
            AlertDialog.Builder alert = new AlertDialog.Builder(MainActivity.this);
            alert.setMessage("This Alert Dialog will be show after the ProgressDialog dismissed");
            alert.show();

        }
    });
    barProgressDialog.setTitle("Processing,please wait ...");
    barProgressDialog.setMessage("Cracking password in progress ...");
    barProgressDialog.setProgressStyle(barProgressDialog.STYLE_HORIZONTAL);
    barProgressDialog.setProgress(0);
    barProgressDialog.setMax(10);
    barProgressDialog.show();

    new Thread(new Runnable() {
        @Override
        public void run() {
            try {
                // Here you should write your time consuming task...
                while (barProgressDialog.getProgress() <= barProgressDialog
                        .getMax()) {

                    Thread.sleep(1000);
                    updateBarHandler.post(new Runnable() {
                        public void run() {
                            barProgressDialog.incrementProgressBy(2);

                            if (barProgressDialog.getProgress() == barProgressDialog
                                    .getMax()) {
                                barProgressDialog.dismiss();
                            }
                        }
                    });
                }
            } catch (Exception e) {
                Log.e("thiago", "error when trying to run the Thread==>"+e.getMessage());
            }
        }
    }).start();
}

我希望代码能帮助您解决问题。 :)

关于java - 进度条对话框关闭后如何显示警报对话框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21457851/

相关文章:

android - 在 Android Studio 的发布版本中启用 LogCat

java - 如何编写一个返回数组中给定列的总和的方法? java

java - HttpClientFormSubmit 获取 OAUTH 访问 token

java - 如何设置可执行 IE 11 驱动程序的路径

android - 远程退出谷歌账户

android - 访问 SOAP Web 服务

java - Spring Listener Container - 事务管理器 - Spring Retry - 多个事务之间

java - 为什么集成流不订阅 from channel ?

android - 如何检查文件夹是否循环为空?

android - 适用于 Android 的 Google 日历 API