如何在android中使用asynctask时删除进度对话框

时间:2012-01-04 13:42:32

标签: android android-asynctask

我在我的程序中使用了asynctask我在postexecute方法中传递intent之前已经解除对话但是在其他活动数据显示中它仍然显示进度对话框如何删除或我的代码出现了什么问题

http://pastebin.com/bGrMbGCJ

2 个答案:

答案 0 :(得分:0)

一次不能有两个微调器。在这种情况下需要使用任何技巧,

使用PostExecute上设置的一个公共标志。 在步骤#3之前,在两个AsyncTask的postExecute上检查标志是否已经设置,如果是,则只需取消微调器。 请参阅下面的伪代码。

postExecute(){
      If(taskCompletedFlag == true){
            //Code to cancel the spinner.
            taskCompletedFlag = false;
      }else{
            taskCompledtedFlag = true;
      }
}

P.S。 - 如果您不知道哪个AsyncTask将首先启动,您可以在那里使用相同的机制。

答案 1 :(得分:0)

要清除任何现有的对话窗口,请使用:

dialog.cancel();