@ProviderTag(messageContent = GoodsMsg.class, showReadState = true)
public class GoodsMsgProvider extends IContainerItemProvider.MessageProvider<GoodsMsg> {
private Context mContext;
public GoodsMsgProvider(Context context) {
mContext = context;
}
@Override
public void bindView(View view, int i, GoodsMsg goodsMsg, UIMessage uiMessage) {
//根据需求,适配数据
ViewHolder holder = (ViewHolder) view.getTag();
holder.tvGoodsName.setText(goodsMsg.getGoodsName());
holder.tvShopName.setText(goodsMsg.getShopName());
holder.tvGoodsPrice.setText(goodsMsg.getGoodsPriceMin());
GlideRoundTransform glideRoundTransform = new GlideRoundTransform(mContext, 8, GlideRoundTransform.CornerType.TOP);
Glide.with(mContext)
.load(goodsMsg.getGoodsCoverUrl())
.apply(new RequestOptions()
.diskCacheStrategy(DiskCacheStrategy.ALL)
.transform(glideRoundTransform))
.placeholder(R.mipmap.icon_default_placeholder)
.into(holder.ivGoodsCover);
ImageLoaderUtil.loadImgCenterCrop(holder.ivShopLogo, goodsMsg.getShopLogo(), R.mipmap.icon_default_avatar_shop);
List<String> goodsTag = goodsMsg.getGoodsTag();
if (goodsTag != null && !goodsTag.isEmpty()) {
holder.tflGoodsTag.setVisibility(View.VISIBLE);
holder.tflGoodsTag.setAdapter(new TagAdapter<String>(goodsTag) {
@Override
public View getView(FlowLayout parent, int position, String s) {
TextView tv = (TextView) LayoutInflater.from(mContext).inflate(R.layout.item_goods_tag_bg, parent, false);
tv.setText(s);
return tv;
}
});
} else {
holder.tflGoodsTag.setVisibility(View.GONE);
}
}
@Override
public Spannable getContentSummary(GoodsMsg goodsMsg) {
return null;
}
@Override
public Spannable getContentSummary(Context context, GoodsMsg data) {
return new SpannableString("[商品信息]");
}
@Override
public void onItemClick(View view, int i, GoodsMsg goodsMsg, UIMessage uiMessage) {
String goodsId = goodsMsg.getGoodsId();
ARouter.getInstance()
.build(CommonARouterPath.GOODS_DETAIL_ACTIVITY)
.withString("id", goodsId)
.navigation();
}
@Override
public View newView(Context context, ViewGroup viewGroup) {
View view = LayoutInflater.from(context).inflate(R.layout.item_goods_msg, null);
view.setLayoutParams(new ViewGroup.LayoutParams((int) (ScreenUtil.getScreenWidth(context) * 2 / 3), ViewGroup.LayoutParams.WRAP_CONTENT));
ViewHolder holder = new ViewHolder();
holder.ivGoodsCover = view.findViewById(R.id.iv_goods_cover);
holder.ivShopLogo = view.findViewById(R.id.iv_shop_logo);
holder.tvGoodsPrice = view.findViewById(R.id.tv_goods_price);
holder.tvGoodsName = view.findViewById(R.id.tv_goods_name);
holder.tvShopName = view.findViewById(R.id.tv_shop_name);
holder.tflGoodsTag = view.findViewById(R.id.tfl_goods_tag);
view.setTag(holder);
return view;
}
private static class ViewHolder {
ImageView ivGoodsCover;
CircleImageView ivShopLogo;
TextView tvGoodsPrice, tvGoodsName, tvShopName;
TagFlowLayout tflGoodsTag;
}
}
GoodsMsgProvider
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。