Я показываю список пользователей в recycleview/listview.
В каждом элементе отображается изображение пользователя и другая информация. У меня URLs пользователя образ, как
Отображение миниатюр в android listview/recycleview
ThumbNail : www.image_storage_server.com/thumbs/userid
FullImage : www.image_storage_server.com/images/userid
Я хочу показать это эскизы в элементе списка. Он должен работать как ниже
- Загрузить изображение и показать его в списке.
- Загрузите загруженное изображение. И используйте его при загрузке изображения.
- Если нет сети, покажите кешированное изображение.
В принципе, я хочу загружать миниатюры каждый раз, если есть сеть.
Когда пользователь нажимает на элемент списка, я хочу показать полное изображение пользователя.
И во время загрузки я хочу показать кеш-файл в качестве изображения по умолчанию.
В настоящее время я использую 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);
Опубликовать код, что вы пробовали до сих пор? –
Многим приложениям необходимо реализовать такие функции. Поэтому да, есть много библиотек, доступных в Github. Одна из самых популярных и очень хорошо реализованных библиотек - Пикассо. http://square.github.io/picasso/ –