我被这个问题难住了,我的onBackPressed()
方法在必要时不起作用。我的情况是,一旦活动开始,就会出现进度对话框,因为我调用asynctask.execute()
了 onCreate。当过程需要很长时间时,我想为用户提供一个功能,他可以关闭正在进行的过程(从服务器下载数据),所以我尝试关闭对话框并在按下后退按钮时完成活动,但它不起作用。
当我在获得数据后通常按下返回按钮时,控件似乎在onBackPressed()
.
下面是我的代码片段:
public void onBackPressed() {
if(progressDialog != null && progressDialog.isShowing())
{
progressDialog.dismiss();
}
finish();
}
有没有其他方法可以让用户有机会随时取消。请建议我如何在用户按下后退按钮时终止整个过程和活动。