我有一个在onCreate
内加载AsyncTask的活动,但是,我得到一个例外,因为活动已经完成了生命周期,但ProgressDialog仍在运行。
我的解决方案是:
在onDestroy
和onPause
方法中调用dismiss方法。这里的问题是,ProgressDialog
现在没用了,即使后台任务甚至没有拉动数据也被解雇了。
还在onPause
中尝试了此操作,但无限循环不会终止。
while(progress.isShowing()){
}
progress.dismiss();
答案 0 :(得分:1)
为什么不从aynctask的onpostexecute方法获取事件并将其解除。创建一个接口来获取事件并将其传递给asynctask构造函数。 asyntask的OnPPostExecute方法,调用该接口的方法并解除那里的进度条。