ImageHolder占位符 public void setImagePlaceHolder(final String url, final ImageView view) { if (view == null || TextUtils.isEmpty(url)) { return; } ViewGroup.LayoutParams layoutParams = view.getLayoutParams(); if (layoutParams != null (l
public void setImagePlaceHolder(final String url, final ImageView view) { if (view == null || TextUtils.isEmpty(url)) { return; } ViewGroup.LayoutParams layoutParams = view.getLayoutParams(); if (layoutParams != null && (layoutParams.width <= 0 || layoutParams.height <= 0)) { return; } final String LOCAL_PREFIX = "res://"; if (url.startsWith(LOCAL_PREFIX)) { ThreadManager.post(ThreadManager.THREAD_WORK, new Runnable() { @Override public void run() { final Drawable drawable = ResTools.getDrawable(url.substring(LOCAL_PREFIX.length())); ThreadManager.post(ThreadManager.THREAD_UI, new Runnable() { @Override public void run() { if (view.getDrawable() == null) { view.setImageDrawable(drawable); } } }); } }); } else { ThreadManager.post(ThreadManager.THREAD_UI, new Runnable() { @Override public void run() { Bitmap cache = ImageLoader.getInstance().getMemoryCache().get(url); if (cache == null) { ImageView proxyImage = new ImageView(view.getContext()) { @Override public void setImageDrawable(Drawable drawable) { if (view.getDrawable() == null) { view.setImageDrawable(drawable); } } }; proxyImage.setLayoutParams(view.getLayoutParams()); String uri = url.startsWith("//") ? "http:" + url : url; WXImageLoaderManager.getInstance().displayImage(uri, view, null, null); } else { view.setImageBitmap(cache); } } }); } }