したがって、各リスト項目に複数の ImageView を持つ ListView があります。Universal Image Loader を使用して各画像を読み込みます。
私が望むのは、リスト内のすべての画像がロードされている間、単一の不確定なプログレスバースピナー (アクションバーなど) を表示し、最後の画像がロードされたときにスピナーが非表示になるようにすることです。
これが可能かどうか、またはこれを行うための最良の手法がわかりませんか?
ありがとう。
したがって、各リスト項目に複数の ImageView を持つ ListView があります。Universal Image Loader を使用して各画像を読み込みます。
私が望むのは、リスト内のすべての画像がロードされている間、単一の不確定なプログレスバースピナー (アクションバーなど) を表示し、最後の画像がロードされたときにスピナーが非表示になるようにすることです。
これが可能かどうか、またはこれを行うための最良の手法がわかりませんか?
ありがとう。
これを試して。アダプター内:
@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);
}
}
}