Когда интернет медленный, Glide занимает слишком много времени, чтобы показать изображение, мне нужно немедленно отобразить изображение.Glide, Как отобразить кеш изображения во время зарядки запроса?
2
A
ответ
11
1) Если ваше изображение не меняется быстро, вы можете использовать функцию кеширования Glide и кеширования памяти. Определите стратегию, используя метод .diskCacheStrategy(DiskCacheStrategy)
. Там нет несколько DiskCacheStrategy
вы можете использовать:
DiskCacheStrategy.NONE
кэши ничегоDiskCacheStrategy.SOURCE
кэширует только оригинальное с полным разрешением изображения.DiskCacheStrategy.RESULT
кэширует только окончательное изображение после уменьшения разрешенияDiskCacheStrategy.ALL
кэширует все версии изображения. Это поведение по умолчанию
2) Если ваше изображение быстро меняется, вам нужно будет сразу загрузить кешированное изображение, а затем выполнить сетевой вызов, чтобы получить обновление и загрузить его, если удастся. Есть способы сделать это, но, возможно, вы хотите посмотреть на RxJava и .concat
@ Загар, был ли ответ какой-либо помощи вам? –
Не совсем, потому что я хотел был устранить отставание. Хотя Glide проверяет, что URL-адрес изменяет и перезагружает новое изображение, я хотел, чтобы он отображал тот, который уже был кеширован, то есть image 1 = http://awesome.image.com/myawesomeimage.png [cached] image 2 = http://awesome.image.com/otherimage.png [новый для загрузки] Glide покажет myawesomeimage.png при загрузке otherimage.png Но я благодарю вас за ваш ответ, так как я вижу, что вы помогли другим членам сообщества. – Celggar