Wrong image on recyclerview
SmasSive opened this issue ยท 5 comments
Hi!
First of all thanks for this great lib! ๐
I'm using BIV like a gallery, in a recyclerview with a viewpager behaviour and the viewholder is basically a BigImageView, the question is that when I'm paginating there is a page that shows a previous image while progress is shown and once the right image is ready, it is shown correctly.
What I expect is that while the image is downloading, no previous image is shown but only the progress.
I've tried to do a cancel() in the onViewRecycled method of the adapter but with no success... I've read also that another solution could be to do a setImageDrawable(null) but AFAIK I don't have access to the ImageView right?
What can I do? If you need more info please ask me!
Thanks a lot!!!
I've managed this by doing the following:
- On
onViewRecycledmethod from adapter I call a holder method namedclear() - That
holder.clear()is a method that gets theSubsamplingScaleImageViewand then calls torecycle()
Adapter
override fun onViewRecycled(holder: GlideGalleryViewHolder) {
holder.clear()
}ViewHolder
fun clear() {
itemView.itemImage.ssiv.recycle()
}But I don't know if it's a good practice or it's ok. Could you please give me your opinion? Thanks!
I think that's a good way to solve this problem.
Did anyone managed to recycle() a ssiv in RecyclerView with ViewPager successfully?
Calling ssiv.recycle() does not work as expected.
I was managed to make it work by hiding a BigImageView in onBindViewHolder and to show it when onMainImageShown callback is triggered.
ssiv.recycle() didn't work for me.