0

所以我有一个 ListView,每个列表项中有几个 ImageView。我使用通用图像加载器来加载每个图像。

我想要的是显示一个不确定的进度条微调器(比如在操作栏上),而列表中的所有图像都在加载,并且当最后一个图像加载时微调器被隐藏。

我不确定这是否可能,或者这样做的最佳技术?

谢谢。

4

1 回答 1

3

试试这个。在适配器中:

@Override
public View getView(final int position, View convertView, ViewGroup parent) {
    ...     
    ImageLoadingListener listener = new CombinedImageLoadingListener(3, progressBar);
    imageLoader.displayImage(uri1, imageView1, listener);
    imageLoader.displayImage(uri2, imageView2, listener);
    imageLoader.displayImage(uri3, imageView3, listener);
    ...
}

而这个听众:

class CombinedImageLoadingListener extends SimpleImageLoadingListener {

    private int imageCount;
    private ProgressBar progressBar;

    public CombinedImageLoadingListener(int imageCount, ProgressBar progressBar) {
        this.imageCount = imageCount;
        this.progressBar = progressBar;
    }

    @Override
    public void onLoadingComplete(Bitmap loadedImage) {
        imageCount--;
        if (imageCount == 0) {
            progressBar.setVisibility(View.GONE);
        }
    }
}
于 2013-02-06T10:20:50.707 回答