Search code examples
androidcachinglocalofflineuniversal-image-loader

Android UIL use only cached Images


How to set android UniversalImageLoader to shows only preloaded(no new download) Images.

final ImageLoaderConfiguration ilc = new ImageLoaderConfiguration.Builder(context).build();
final DisplayImageOptions.Builder dioBuilder = new DisplayImageOptions.Builder()//
    .resetViewBeforeLoading(true) //
    .delayBeforeLoading(0)//
    .cacheInMemory(true) //
    .cacheOnDisk(true) //
    .imageScaleType(ImageScaleType.EXACTLY) //
    .bitmapConfig(Bitmap.Config.ARGB_8888) //
    .displayer(new SimpleBitmapDisplayer()) //
    .showImageOnLoading(R.drawable.loading) //
    .showImageForEmptyUri(R.drawable.error) //
    .showImageOnFail(R.drawable.error) //
    .handler(new Handler());
final DisplayImageOptions dio = dioBuilder.build();
final DisplayImageOptions dioLocal = dioBuilder//
    /*maybe something here*/
.build();

Solution

  • By using this answer's Solution I change my code to:

    OnlineImageLoader = new ImageLoader() {
        {
            init(imageLoaderConfiguration);
            denyNetworkDownloads(false);
            handleSlowNetwork(true);
        }
    };
    OfflineImageLoader = new ImageLoader() {
        {
            init(imageLoaderConfiguration);
            denyNetworkDownloads(true);
        }
    };
    

    And when I want to use force local works I use OfflineImageLoader else OnlineImageLoader