From 453f563482304fa19c9af35a018c54bd244b0975 Mon Sep 17 00:00:00 2001 From: Bulent Turkmen Date: Sat, 18 Dec 2021 23:11:51 +0300 Subject: [PATCH] clear glide resource for each recycle in order to avoid mixing size of images --- app/build.gradle | 2 +- .../com/labters/imagestackviewer/ImageViewExtensions.kt | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index a433fa2..43fd460 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -43,5 +43,5 @@ dependencies { implementation "androidx.viewpager2:viewpager2:1.0.0" implementation 'com.github.bumptech.glide:glide:4.11.0' implementation 'com.jsibbold:zoomage:1.3.1' - implementation 'com.github.mayuce:ImageStackViewer:1.0.0' + implementation 'com.github.mayuce:ImageStackViewer:1.1.0' } diff --git a/imagestackviewer/src/main/java/com/labters/imagestackviewer/ImageViewExtensions.kt b/imagestackviewer/src/main/java/com/labters/imagestackviewer/ImageViewExtensions.kt index 32285d4..1e0b860 100644 --- a/imagestackviewer/src/main/java/com/labters/imagestackviewer/ImageViewExtensions.kt +++ b/imagestackviewer/src/main/java/com/labters/imagestackviewer/ImageViewExtensions.kt @@ -53,6 +53,7 @@ fun ImageView.srcGlide(data: Any?, isCenterCrop: Boolean?) { return } + val imageView = this var options = RequestOptions() if (isCenterCrop != false) { @@ -65,6 +66,9 @@ fun ImageView.srcGlide(data: Any?, isCenterCrop: Boolean?) { resource?.let { Glide .with(context) + .apply { + clear(imageView) + } .load(resource) .apply(options) .addListener(object : RequestListener { @@ -75,7 +79,7 @@ fun ImageView.srcGlide(data: Any?, isCenterCrop: Boolean?) { dataSource: DataSource?, isFirstResource: Boolean ): Boolean { - ImageViewExtensions.onImageReady(this@srcGlide, resource) + ImageViewExtensions.onImageReady(imageView, resource) return false }