2017-01-17 9 views
0

Я разрабатываю приложение, в котором мне нужно сначала получить все изображения из Firebase, а затем отобразить в образе просмотра один за другим с промежутком в 5 секунд. Изображения большую часть времени останутся такими же, поэтому я хочу, чтобы кешировать эти изображения, и если пользователь в автономном режиме использует кешированные изображения и отображает их в режиме просмотра изображений. Но проблема в том, я только получил следующий код с Пикассо библиотеки, в которой изображение непосредственно отображается на ImageViewПовторное получение нескольких изображений из firebase с использованием библиотеки Picasso и их кеширование

Picasso.with(RetreivingImageFirebase.this) 
       .load("https://firebasestorage.googleapis.com/v0/b/yavatmalindicatorserver.appspot.com/o/Photos%2F22268?alt=media&token=a71e00eb-c453-4803-80d1-9d769037ab46") 
       .fit() 
       .centerCrop() 
       .into(mImageView); 

мне нужно как-то сначала сохранить все изображения, а затем отобразить его один за другим. Я искал аналогичные вопросы о переполнении стека, но ни один из них не показывает правильные методы. Пожалуйста, помогите

ответ

0

Вы ищете RequestCreator.fetch

общественной пустоте выборки()

Асинхронный выполняет запрос без ImageView или Target. Это полезно, если вы хотите разогреть кеш с изображением. Примечание: Безопасно вызывать этот метод из любого потока.

E.g.

Picasso.with(context) 
    .load(url) 
    .fit() 
    .centerCrop() 
    .fetch(); 
+0

После использования «выборок(), где есть изображение, сохраненный я имею в виду, как решить этот образ, так как возвращаемый типа выборки() является ничтожной –

+1

Picasso управляет своим собственным кэшем. В следующий раз, когда вы попытаетесь загрузить один и тот же URL-адрес изображения в «ImageView», он будет использовать кеш. – Sangharsh

+0

Используйте 'Picasso.setIndicatorsEnabled (true)', чтобы узнать, используется ли кеш. – Sangharsh