0

我有一个 ImageView,我想在从URL加载图像时显示ProgressBar。要加载图像,我正在使用VolleyPlus库。这是加载图像的代码:

DiskLruBasedCache.ImageCacheParams cacheParams = new DiskLruBasedCache.ImageCacheParams(getApplicationContext(), "CacheDirectory");
cacheParams.setMemCacheSizePercent(0.5f);
SimpleImageLoader mImageFetcher = new SimpleImageLoader(getApplicationContext(), R.drawable.progress, cacheParams);
mImageFetcher.get(image_url, imgView);

现在我的问题是我可以在 ImageView中制作可绘制的 ProgressBar (R.drawable.progress) 。

4

1 回答 1

0

您在加载过程中使用setDefaultImageResId来显示图像,如果失败,但您将无法使用视图。但是,您可以在 NetworkImageView 后面使用 FrameLayout 和 ProgressBar 来显示加载时的旋转进度。

如果下载成功,您无需做任何事情,因为 Android 应该绘制进度视图,因为它是隐藏的,如果失败,您将不得不将其取下。

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <ProgressBar
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center" />

    <com.android.volley.toolbox.NetworkImageView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:scaleType="centerCrop" />

</FrameLayout>
于 2014-11-23T10:10:08.507 回答