【问题标题】:Android volley get callback when all requests finish当所有请求完成时,Android volley 得到回调
【发布时间】:2013-06-21 18:54:46
【问题描述】:

我正在使用 volley 来排队一系列请求。当这些请求发生时,我正在向用户显示一个进度对话框。有没有办法可以检查所有这些请求何时完成。 这就是我想要的。

//Show progress bar
for(int i=0;i<size;i++)
{
    //create request and add the request
    requestQueue.add(request);
}
// When last request finsihes dismiss progres bar

有没有办法解决这个问题。

【问题讨论】:

    标签: android networking future android-volley


    【解决方案1】:

    您可以将请求总数保存在成员变量中:

    int pendingRequests = 0;
    
    //...
    for(int i=0;i<size;i++)
    {
        requestQueue.add(request);
        pendingRequests++;
    }
    

    然后每次请求完成时你就递减计数器,如果达到 0,你就知道所有请求都完成了。

    【讨论】:

    • 我使用了 AtomicInteger 因为可能存在并发问题。
    • 好答案!花了一段时间寻找解决方案,但这很简单直接。
    猜你喜欢
    • 2018-11-08
    • 1970-01-01
    • 2013-05-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多