I'm using Picasso in onBindViewHolder but when scrolling up or down it reload same images urls from internet this make the list so bad and slow
so i want when it first load save the scroll state for images and do not load it again '
how i can do that?
onBindViewHolder Method :
@Override
public void onBindViewHolder(MyCustomAdapter.CustomViewHolder holder, int position) {
Dishes di = dish.get(position);
//Download image using picasso library
Picasso.with(mContext).load(di.getDishImageUrl())
.error(R.drawable.ic_error)
.placeholder(R.drawable.fav_btn)
.into(holder.imageView);
//Setting text view title
holder.textView.setText(Html.fromHtml(di.getDishName()));
View.OnClickListener clickListener = new View.OnClickListener() {
@Override
public void onClick(View view) {
CustomViewHolder holder = (CustomViewHolder) view.getTag();
int position = holder.getPosition();
Dishes di = dish.get(position);
Toast.makeText(mContext, di.getDishName(), Toast.LENGTH_SHORT).show();
}
};
//Handle click event on both title and image click
holder.textView.setOnClickListener(clickListener);
holder.imageView.setOnClickListener(clickListener);
holder.textView.setTag(dish.get(position));
holder.imageView.setTag(dish.get(position));
}