java - 如何在多个异步任务完成后启动新的 Activity

标签 java android android-asynctask

我有一个问题:

我想在几个异步任务完成后启动一个新的 Activity 。 我的问题是异步任务是动态启动的。有时我只有一个异步任务,有时我有五个异步任务。 更大的问题是,所有都是相同的异步任务,只是具有不同的 URL。因为它们是下载任务。

有人可以帮忙吗?

解决方案:

我创建了一个计数器,每个可用更新的计数都会增加 1。因此,如果有五个更新可用,计数器将设置为 5。每次完成更新和解压缩,计数器将设置为低 1。如果 counter == 0 它将打开新的 Activity。

感谢您的所有回答。

最佳答案

使用分配有 AsynTasks 数量的全局变量计数器,
每次 onPostExecute 都会递减计数器

ON if(counter ==0) 开始新的 Activity

class A{
int counter =0;

public doJob(int jobCOunt){
    this.counter = jobCount
    new Job().execute();
}
class Job extends AsyncTask{
...
  protected void onPostExecute(Boolean success) {
    counter--;
    if(counter == 0){
        startActivity
    }
  }

}

}  

关于java - 如何在多个异步任务完成后启动新的 Activity,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40061822/

相关文章:

java - 有没有比 SharedPreferences 更好的替代方案来保存/缓存大量数据而无需在线访问?

java - JasperReports 是否允许动态字体颜色?

java - 调用了错误的 onDrag 类

android - 在带有标题的操作栏上创建抽屉导航

android - 应用程序安装失败 - 新目标沙箱 1 与之前的值 2 不兼容

android - 如何解析 JSON 对象并将其显示在 ListView 中?

java - 显示启动画面时如何在后台加载 webview 中的 url?

java - 为什么这个使用反射的方法会抛出npe?

java - 如何添加对另一个模块的运行时依赖?

android - 对于 MySQL 请求,是否有比 ASyncTask 更好的类或库?