package com.tejia.lijin.app.ui.recommend;
|
|
import android.content.Context;
|
import android.content.Intent;
|
import android.graphics.Paint;
|
import android.graphics.Typeface;
|
import android.text.Spannable;
|
import android.text.SpannableString;
|
import android.text.Spanned;
|
import android.text.style.RelativeSizeSpan;
|
import android.text.style.StyleSpan;
|
import android.view.LayoutInflater;
|
import android.view.View;
|
import android.view.ViewGroup;
|
import android.widget.BaseAdapter;
|
import android.widget.ImageView;
|
import android.widget.LinearLayout;
|
import android.widget.TextView;
|
|
import com.wpc.library.widget.RatioLayout;
|
import com.nostra13.universalimageloader.core.DisplayImageOptions;
|
import com.nostra13.universalimageloader.core.ImageLoader;
|
import com.nostra13.universalimageloader.core.assist.ImageScaleType;
|
import com.nostra13.universalimageloader.core.display.FadeInBitmapDisplayer;
|
import com.tejia.lijin.app.R;
|
import com.tejia.lijin.app.entity.TaoBaoGoodsBrief;
|
import com.tejia.lijin.app.util.Constant;
|
import com.tejia.lijin.app.util.ImageUtil;
|
import com.tejia.lijin.app.util.goods.GoodsDetailJumpUtil;
|
import com.tejia.lijin.app.util.umengCustomEvent.GoodsCustomEvent;
|
|
import java.util.List;
|
|
/**
|
* Created by weikou2015 on 2018/5/14.
|
*/
|
|
public class RelativeGoodsAdapter extends BaseAdapter {
|
private List<TaoBaoGoodsBrief> wList;
|
private Context mContext;
|
private DisplayImageOptions options;
|
private String from = "";
|
|
public RelativeGoodsAdapter(Context context, List<TaoBaoGoodsBrief> wList, String form) {
|
this.mContext = context;
|
this.wList = wList;
|
this.from = form;
|
this.options = new DisplayImageOptions.Builder()
|
.showImageForEmptyUri(R.drawable.ic_goods_default)
|
.showImageOnFail(R.drawable.ic_goods_default)
|
.showImageOnLoading(R.drawable.ic_goods_default)
|
.resetViewBeforeLoading(true).cacheInMemory(true)
|
.cacheOnDisk(true).imageScaleType(ImageScaleType.EXACTLY)
|
.considerExifParams(true)
|
.displayer(new FadeInBitmapDisplayer(300)).build();
|
}
|
|
@Override
|
public int getCount() {
|
return wList == null ? 0 : wList.size();
|
}
|
|
@Override
|
public Object getItem(int position) {
|
return wList.get(position);
|
}
|
|
@Override
|
public long getItemId(int position) {
|
return position;
|
}
|
|
@Override
|
public View getView(final int position, View convertView, ViewGroup parent) {
|
final ViewHolder viewHolder;
|
if (convertView == null) {
|
convertView = LayoutInflater.from(mContext).inflate(
|
R.layout.item_recommend_gv, null);
|
viewHolder = new ViewHolder();
|
viewHolder.ratioLayout = convertView
|
.findViewById(R.id.item_recommend_gv_ral);
|
viewHolder.iv_pic = convertView
|
.findViewById(R.id.iv_movie_cover);
|
viewHolder.tv_name = convertView
|
.findViewById(R.id.tv_movie_title);
|
|
viewHolder.tv_price = convertView.findViewById(R.id.tv_price);
|
viewHolder.tv_coupon_price = convertView.findViewById(R.id.tv_coupon_price1);
|
viewHolder.ll_coupon_bg1 = convertView.findViewById(R.id.ll_coupon_bg1);
|
viewHolder.ll_coupon = convertView.findViewById(R.id.ll_coupon);
|
viewHolder.ll_recommend_gv = convertView.findViewById(R.id.ll_recommend_gv);
|
viewHolder.tv_favourable = convertView.findViewById(R.id.tv_favourable);
|
viewHolder.tv_normal_price = convertView.findViewById(R.id.tv_normal_price);
|
viewHolder.tv_sale_num = convertView.findViewById(R.id.tv_sale_num);
|
|
viewHolder.ll_discount = convertView.findViewById(R.id.ll_discount);
|
viewHolder.tv_discount = convertView.findViewById(R.id.tv_discount);
|
convertView.setTag(viewHolder);
|
} else {
|
viewHolder = (ViewHolder) convertView.getTag();
|
}
|
viewHolder.ll_recommend_gv.setVisibility(View.VISIBLE);
|
viewHolder.ratioLayout.setRatio(1.0f);
|
final TaoBaoGoodsBrief info = wList.get(position);
|
if (info == null) {
|
return convertView;
|
}
|
int shopType = info.getShopType();
|
ImageUtil.showImageFace(mContext, info.getTitle(), shopType, viewHolder.tv_name);
|
// 图片
|
// Glide.with(mContext).load(info.getPictUrl()).placeholder(R.drawable.ic_goods_default).bitmapTransform(new RoundedCornersTransformation(mContext,
|
// DimenUtils.dip2px(mContext, 5), 0, RoundedCornersTransformation.CornerType.TOP)).into(viewHolder.iv_pic);
|
ImageLoader.getInstance().displayImage(info.getPicUrl(), viewHolder.iv_pic, options);
|
|
viewHolder.tv_normal_price.setText("¥" + info.getZkPrice());
|
viewHolder.tv_normal_price.setPaintFlags(viewHolder.tv_normal_price.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG);
|
|
// viewHolder.tv_normal_price.setPaintFlags(viewHolder.tv_normal_price.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG);
|
|
viewHolder.tv_price.setTextColor(mContext.getResources().getColor(R.color.theme));
|
|
if (info.getMoneyInfo() != null) {
|
viewHolder.tv_favourable.setText( (info.getMoneyInfo().getMoneyType() == 1 ?"返 ":"奖 ") + info.getMoneyInfo().getFanliMoney());
|
}
|
String disCount;
|
if (info.isHasCoupon()) {
|
disCount = "¥ " + info.getCouponPrice();
|
viewHolder.ll_coupon_bg1.setVisibility(View.VISIBLE);
|
viewHolder.tv_coupon_price.setText("¥ " + info.getCouponInfo().getAmount());
|
} else {
|
if (info.getGoodsType() == Constant.GOODS_TYPE_VIP) {
|
disCount = "¥ " + info.getCouponPrice();
|
} else
|
disCount = "¥ " + info.getZkPrice();
|
viewHolder.ll_coupon_bg1.setVisibility(View.GONE);
|
}
|
Spannable span = new SpannableString(disCount);
|
span.setSpan(new RelativeSizeSpan(1.4f), 1, disCount.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
|
span.setSpan(new StyleSpan(Typeface.BOLD), 1, disCount.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
|
viewHolder.tv_price.setText(span);
|
|
viewHolder.tv_sale_num.setTextColor((info.getSalesType() == 1 || info.getSalesType() == 4) ?
|
mContext.getResources().getColor(R.color.gray5) : info.getSalesType() == 2 ?
|
mContext.getResources().getColor(R.color.goods_sale_num_text_color_orange) :
|
mContext.getResources().getColor(R.color.goods_sale_num_text_color_blue));
|
if (info.getGoodsType() != Constant.GOODS_TYPE_VIP) {
|
viewHolder.tv_sale_num.setText(info.getSalesType() == 1 ? "月销 " + info.getSalesCount() :
|
info.getSalesType() == 2 ? "2小时销量 " + info.getSalesCount() : info.getSalesType() == 3 ?
|
"今日销量 " + info.getSalesCount() : "总销量 " + info.getSalesCount());
|
viewHolder.ll_discount.setVisibility(View.GONE);
|
} else {
|
viewHolder.tv_sale_num.setText("");
|
viewHolder.ll_discount.setVisibility(View.VISIBLE);
|
viewHolder.tv_discount.setText(info.getDiscount());
|
}
|
|
viewHolder.ll_recommend_gv.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View v) {
|
// Intent intent = new Intent(mContext, GoodsDetailBrowerActivity.class);
|
if (from == "相关推荐") {
|
GoodsCustomEvent.goodsDetailRecommend(mContext);
|
} else {
|
GoodsCustomEvent.goodsDetailGuess(mContext);
|
}
|
Intent intent= GoodsDetailJumpUtil.getGoodsDetailIntent(mContext,info.getGoodsType());
|
intent.putExtra("title", info.getTitle());
|
intent.putExtra("id", info.getGoodsId());
|
mContext.startActivity(intent);
|
}
|
});
|
|
viewHolder.tv_favourable.setVisibility(View.GONE);
|
return convertView;
|
}
|
|
class ViewHolder {
|
TextView tv_name;
|
TextView tv_price;
|
TextView tv_normal_price;
|
TextView tv_coupon_price;
|
LinearLayout ll_coupon_bg1;
|
LinearLayout ll_recommend_gv;
|
LinearLayout ll_coupon;
|
TextView tv_favourable;//红包,券后价
|
TextView tv_sale_num;
|
ImageView iv_pic;
|
RatioLayout ratioLayout;
|
TextView tv_discount;
|
LinearLayout ll_discount;
|
}
|
}
|