package hwg.com.hongkong.adapter; import android.text.TextUtils; import android.view.View; import android.widget.ImageView; import com.squareup.picasso.Picasso; import com.taobao.weex.WXSDKManager; import com.taobao.weex.adapter.IWXImgLoaderAdapter; import com.taobao.weex.common.WXImageStrategy; import com.taobao.weex.dom.WXImageQuality; import java.lang.reflect.Field; import hwg.com.hongkong.R; /** * Created by lixinke on 16/6/1. */ public class ImageAdapter implements IWXImgLoaderAdapter { @Override public void setImage(final String url, final ImageView view, WXImageQuality quality, WXImageStrategy strategy) { WXSDKManager.getInstance().postOnUiThread(new Runnable() { @Override public void run() { if (view == null || view.getLayoutParams() == null) { return; } if (TextUtils.isEmpty(url)) { view.setImageBitmap(null); return; } String temp = url; if (url.startsWith("//")) { temp = "http:" + url; } if (view.getLayoutParams().width <= 0 || view.getLayoutParams().height <= 0) { return; } //实现你自己的图片下载。 //本地图片统一规则:drawable://act_clothes_icon if (!TextUtils.isEmpty(url)) { if (url.startsWith("drawable://")) { getImageBydrawableName(view, url); return; } } Picasso.with(view.getContext()).load(url).into(view); } }, 0); } /** * 通过反射获取drawable图片 * * @param view * @param url */ private void getImageBydrawableName(View view, String url) { String urls[] = url.split("//"); String drawableName = ""; if (urls != null && urls.length > 1) { drawableName = urls[1]; } try { Field f = R.drawable.class.getField(drawableName); view.setBackgroundResource(f.getInt(f)); } catch (NoSuchFieldException e) { e.printStackTrace(); } catch (IllegalAccessException e) { e.printStackTrace(); } } }