From 89b15b534f634fdcd178cd25d831d97413bfb204 Mon Sep 17 00:00:00 2001 From: Aleksey Tulinov Date: Sun, 17 Nov 2013 22:06:15 +0200 Subject: [PATCH] Setting up ImageLoader for multiple loads to the same ImageView --- src/org/fdroid/fdroid/views/AppListAdapter.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/org/fdroid/fdroid/views/AppListAdapter.java b/src/org/fdroid/fdroid/views/AppListAdapter.java index 5c5459b70..786f0a8c9 100644 --- a/src/org/fdroid/fdroid/views/AppListAdapter.java +++ b/src/org/fdroid/fdroid/views/AppListAdapter.java @@ -14,15 +14,24 @@ import org.fdroid.fdroid.Preferences; import org.fdroid.fdroid.R; import org.fdroid.fdroid.compat.LayoutCompat; +import com.nostra13.universalimageloader.core.DisplayImageOptions; import com.nostra13.universalimageloader.core.ImageLoader; +import com.nostra13.universalimageloader.core.assist.ImageScaleType; abstract public class AppListAdapter extends BaseAdapter { private List items = new ArrayList(); private Context mContext; + private DisplayImageOptions displayImageOptions; public AppListAdapter(Context context) { mContext = context; + + DisplayImageOptions.Builder builder = new DisplayImageOptions.Builder(); + builder.imageScaleType(ImageScaleType.NONE); // let android scale + builder.resetViewBeforeLoading(true); // required for multiple loading + builder.cacheInMemory(true); // default even if doc says otherwise + displayImageOptions = builder.build(); } abstract protected boolean showStatusUpdate(); @@ -81,7 +90,8 @@ abstract public class AppListAdapter extends BaseAdapter { status.setVisibility(notVisibleOnCompact); license.setVisibility(notVisibleOnCompact); - ImageLoader.getInstance().displayImage(app.iconUrl, icon); + ImageLoader.getInstance().displayImage(app.iconUrl, icon, + displayImageOptions); if (!compact) { status.setText(getVersionInfo(app));