2013-03-15 44 views
0

我很难于解决这个问题,我的onBackPressed()方法在必要时无法使用。我的场景是活动一开始,进度对话框就会显示,因为我在onCreate中调用了asynctask.execute()。当这个过程需要很长时间时,我想给用户一个功能,他可以关闭正在进行的过程(从服务器下载数据),所以我尝试关闭对话框并在按下后退按钮时完成活动,但它不起作用。终止正在进行的过程和当前活动

当我得到数据后,我通常按回按钮,然后控制似乎在onBackPressed()下流动。

下面是我的代码片段:

public void onBackPressed() { 

      if(progressDialog != null && progressDialog.isShowing()) 
      { 
       progressDialog.dismiss(); 
      } 
         finish(); 


     } 

是否有任何其他的方式,让用户有机会取消任何时候。请告诉我如何在用户按下后退按钮时使整个过程和活动终止。

回答

0

要取消进度对话框,请将进度对话框取消设置为true。

dialog.setCancelable(true);