android - 对话框关闭时是否取消了 doInBackground?

标签 android android-asynctask

我在 AsyncTask 中有一个自定义进度对话框,它充当下载进度,我想在按下自定义取消按钮时中断 doInBackground。似乎当对话框关闭时,doInBackground 恢复没有任何问题!

最佳答案

I want to interrupt doInBackground when my custom cancel button pressed. 

=> 在取消按钮点击事件中调用 AsyncTask 的 cancel() 方法。现在这还不足以取消 doInBackground() 过程。

例如:

 asyncTask.cancel(true);

要通知您已使用 cancel() 方法取消 AsyncTask,您必须在 doInBackground() 中使用 isCancelled() 检查它是否已取消.

例如:

protected Object doInBackground(Object... x) 
{
  // do your work...

   if (isCancelled())  
       break;

} 

关于android - 对话框关闭时是否取消了 doInBackground?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13697684/

相关文章:

安卓方向改变

android - AsyncTask 不异步运行

android-asynctask - android.os.NetworkOnMainThreadException at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java :1145)

java - android AysncTask doInbackground

java - 在没有 Activity 的另一个类文件中使用 Toast 扩展了 Android

android - 在后台线程执行硬任务,在主线程返回结果

java - 默认 Android Studio 项目的错误

java - 在android中按下ok后重定向

android - 数据加载两次...意味着 AsyncTask onPostExecute 加载相同的数据两次?

java - 为具有多个 jar 的 android-eclipse 项目配置 ProGuard