单击“是”按钮时,我试图关闭警报。按钮界面会在10秒钟左右的时间内执行一个过程。我想在单击按钮时关闭警报对话框,因为仅在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

                                       }
                                    });

最佳答案

代替alertDialog.dismiss();尝试使用dialog.dismiss();
此外,“大进程”最好不要在UI线程上运行,因为它们会阻塞UI。
AsyncTask示例文档:http://developer.android.com/reference/android/os/AsyncTask.html

关于android - 当我点击"is"按钮时,如何关闭警报,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14969266/

10-10 23:29