I am using a ListView containing images. These images are loaded from the Internet inside the adapter. Therefore I am using the UniversalImageDownloader.
<
@Sergey Pekar: You saved my life! :) I always used UIL for ListView for a small count of images, but then as the count got bigger I got always a lag on the first load (while scrolling) of the images. So I also tried the delay and it helped a little bit and other UIL configs and options, but I was not happy. Then I've tried different Image-Loading-Libraries (Picasso, AQuery, Volley, UrlImageViewHelper, custom code). They all worked faster(on first load) than UIL but they did not have enough options for me. So I looked for the last 2 days for a solution regarding this lag-problem and thanx god I finally found your post here! The solution was the PauseOnScrollListener!
What also (addtionally to the PauseOnScrollListener) improves a little bit the scroll-smoothness is by extending the ImageView to stop requestLayout like this:
public class CustomImageView extends ImageView
{
public CustomImageView (Context context, AttributeSet attributeset, int int_style)
{
super(context, attributeset, int_style);
}
public CustomImageView (Context context, AttributeSet attributeset)
{
super(context, attributeset);
}
public CustomImageView (Context context)
{
super(context);
}
@Override
public void requestLayout()
{
// Do nothing here
}
}
For more info see this post:
ListView very slow when scrolling (using ViewHolder/recycling)