Как удалить тот же кеш url Glide в RecyclerView

#android #kotlin #android-recyclerview #android-glide

#Android #котлин #android-recyclerview #android-glide

Вопрос:

Я хочу загрузить один URL-адрес, который возвращает различные изображения в элементы RecyclerView. Проблема в том, что все элементы имеют одинаковое изображение. Я использую next RequestOptions:

 val options by lazy {
RequestOptions()
    .signature(ObjectKey(System.currentTimeMillis()))
    .diskCacheStrategy(DiskCacheStrategy.NONE)
    .skipMemoryCache(true)}
 

Загрузка изображения:

 fun ImageView.load() {
Glide
    .with(this)
    .asBitmap()
    .load("url")
    .apply(options)
    .into(object : SimpleTarget<Bitmap>(1024, 1024) {
        override fun onResourceReady(resource: Bitmap, transition: Transition<in Bitmap>?) {
            useBitmap(resource)
            this@load.setImageBitmap(resource)
        }
    })}
 

Привязать ViewHolder:

 override fun onBindViewHolder(holder: ViewHolder, position: Int) {
    holder.bind(items[position])
}

class ViewHolder(view: View) : RecyclerView.ViewHolder(view) {
    fun bind(item: Model) = with(itemView) {
        itemView.image.load()
            ...
    }
}
 

Ответ №1:

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

Комментарии:

1. Я уже пытался ‘Glide.with (ImageView).clear (ImageView)’ и установить bitmap null, но это не помогло ‘.