2016-11-25 19 views
-3

Я показываю список пользователей в recycleview/listview.
В каждом элементе отображается изображение пользователя и другая информация. У меня URLs пользователя образ, как
Отображение миниатюр в android listview/recycleview

ThumbNail : www.image_storage_server.com/thumbs/userid 
FullImage : www.image_storage_server.com/images/userid 


Я хочу показать это эскизы в элементе списка. Он должен работать как ниже

  1. Загрузить изображение и показать его в списке.
  2. Загрузите загруженное изображение. И используйте его при загрузке изображения.
  3. Если нет сети, покажите кешированное изображение.

В принципе, я хочу загружать миниатюры каждый раз, если есть сеть.


Когда пользователь нажимает на элемент списка, я хочу показать полное изображение пользователя.
И во время загрузки я хочу показать кеш-файл в качестве изображения по умолчанию.

В настоящее время я использую universal-image-loader, но я не нашел способа достичь этого.
Как достичь этого?
Есть ли другая библиотека, которая предоставляет такую ​​функциональность?

Ниже приведен мой код.

//Initializing imageloader in application's oncreate 
DisplayImageOptions options = new DisplayImageOptions.Builder() 
       .showImageForEmptyUri(R.drawable.avatar) 
       .showImageOnFail(R.drawable.avatar) 
       .cacheInMemory(true) // default 
       .cacheOnDisk(true) // default 
       .build(); 

     ImageLoaderConfiguration.Builder config = new ImageLoaderConfiguration.Builder(context); 
     config.threadPriority(Thread.NORM_PRIORITY - 2); 
     config.denyCacheImageMultipleSizesInMemory(); 
     config.diskCacheFileNameGenerator(new Md5FileNameGenerator()); 
     config.diskCacheSize(50 * 1024 * 1024); // 50 MiB 
     config.tasksProcessingOrder(QueueProcessingType.LIFO); 
     config.defaultDisplayImageOptions(options); 

     // Initialize ImageLoader with configuration. 
     ImageLoader.getInstance().init(config.build()); 


Загрузка изображений с помощью загрузчика изображений в RecycleAdapter

ImageLoader.getInstance().displayImage(user.getThumbnailUrl(), vh.avatarIV); 
+0

Опубликовать код, что вы пробовали до сих пор? –

+0

Многим приложениям необходимо реализовать такие функции. Поэтому да, есть много библиотек, доступных в Github. Одна из самых популярных и очень хорошо реализованных библиотек - Пикассо. http://square.github.io/picasso/ –

ответ

1

Попробуйте использовать Glide (https://github.com/bumptech/glide)

Его очень быстро и легко осуществить по сравнению с другими библиотеками загрузки изображений, которые я использовал ,