点击按钮时警报的接近程度"是"

时间:2013-02-19 23:01:45

标签: android alert android-alertdialog

我在点击“是”按钮时尝试关闭警报。按钮界面在10秒aprox期间执行一个过程。我想在单击按钮时关闭警告对话框,因为仅当SaveRoute方法完成时警报才会关闭。我的代码:

imageRouteDetSave.setOnClickListener(new OnClickListener() {
      public void onClick(View v) {

        //** Save the current route             
        new Thread(new Runnable() {
                public void run() {

                         MyActivity.this.runOnUiThread(new Runnable() {
                                public void run() {
                                    alertDialog = new AlertDialog.Builder(MyActivity.this).create();
                                    alertDialog.setTitle("Saving...");
                                    alertDialog.setMessage("......");
                                    alertDialog.setButton("Yes", new DialogInterface.OnClickListener() {
                                       public void onClick(DialogInterface dialog, int which) {


                                          alertDialog.dismiss(); //-- No close the dialog
                                          SaveRoute();//-- Big proccess

                                       }
                                    });

2 个答案:

答案 0 :(得分:2)

而不是alertDialog.dismiss();尝试使用dialog.dismiss();

此外,“大流程”最好不要在UI线程上运行,因为它们会阻止UI。

AsyncTask示例doc:http://developer.android.com/reference/android/os/AsyncTask.html

答案 1 :(得分:2)

您的“大进程”正在UI线程上运行,这非常糟糕。例如,使用AsyncTask。同时显示进度视图。