admin
2021-05-17 06a80d5c4b3a971cdc1ca3d91717ec3f6e03a443
app/src/main/java/com/tejia/lijin/app/ui/goods/GoodsDetailHongBaoListAdapter.java
@@ -1,6 +1,7 @@
package com.tejia.lijin.app.ui.goods;
import android.content.Context;
import android.content.Intent;
import android.graphics.Color;
import android.graphics.drawable.GradientDrawable;
import android.text.Spannable;
@@ -20,6 +21,7 @@
import com.tejia.lijin.app.R;
import com.tejia.lijin.app.entity.goods.GoodsDetailInfo;
import com.tejia.lijin.app.entity.goods.GoodsDetailVO;
import com.tejia.lijin.app.ui.invite.ShareBrowserActivity;
import com.tejia.lijin.app.util.GlideRoundTransform;
import com.wpc.library.util.common.DimenUtils;
import com.wpc.library.util.common.StringUtils;
@@ -33,11 +35,15 @@
    private Context mContext;
    private List<GoodsDetailVO.GoodsHongBaoListVO> mList;
    private boolean simpleMode;
    private boolean hongBao;
    private ListClickListener listClickListener;
    public GoodsDetailHongBaoListAdapter(Context context, List<GoodsDetailVO.GoodsHongBaoListVO> list, boolean simpleMode) {
    public GoodsDetailHongBaoListAdapter(Context context, List<GoodsDetailVO.GoodsHongBaoListVO> list, ListClickListener listClickListener, boolean simpleMode, boolean hongBao) {
        this.mContext = context;
        this.mList = list;
        this.simpleMode = simpleMode;
        this.hongBao = hongBao;
        this.listClickListener = listClickListener;
    }
    @NonNull
@@ -48,7 +54,8 @@
    @Override
    public void onBindViewHolder(@NonNull RecyclerView.ViewHolder holder, int position) {
        GoodsDetailVO.GoodsHongBaoListVO hongBaoInfo = mList.get(position);
        final int p = position;
        final GoodsDetailVO.GoodsHongBaoListVO hongBaoInfo = mList.get(position);
        final ViewHolder viewHolder = (ViewHolder) holder;
        viewHolder.fl_more.setOnClickListener(new View.OnClickListener() {
            @Override
@@ -65,17 +72,28 @@
        boolean fanli = hongBaoInfo.getType() == 4;
        //初始化View显示
        setShowMode(viewHolder, fanli, simpleMode);
        //设置红包详情
        setHongBaoDetailInfo(viewHolder, hongBaoInfo);
        setShowMode(viewHolder, fanli, simpleMode, hongBao);
        if (hongBao) {
            //设置红包详情
            setHongBaoDetailInfo(viewHolder, hongBaoInfo);
        } else {
            viewHolder.ll_hongbao_detail.setVisibility(View.GONE);
        }
        //设置会员信息
        if (hongBaoInfo.getUserLevel() == null) {
        if (hongBaoInfo.getUserLevel() == null || simpleMode) {
            viewHolder.ll_level_info.setVisibility(View.GONE);
            viewHolder.tv_level_desc.setCompoundDrawablesWithIntrinsicBounds(0, 0, 0, 0);
        } else {
            viewHolder.ll_level_info.setVisibility(View.VISIBLE);
            viewHolder.iv_level.setImageResource(R.drawable.icon_rank_2);
            viewHolder.tv_level_desc.setText(hongBaoInfo.getUserLevel().getDesc());
            if (!StringUtils.isNullOrEmpty(hongBaoInfo.getUserLevel().getLink())) {
                viewHolder.tv_level_desc.setCompoundDrawablesWithIntrinsicBounds(0, 0, R.drawable.icon_goods_detail_hongbao_user_level_more, 0);
            } else {
                viewHolder.tv_level_desc.setCompoundDrawablesWithIntrinsicBounds(0, 0, 0, 0);
            }
        }
@@ -84,15 +102,22 @@
        hbMoney.setSpan(new RelativeSizeSpan(1.5f), 1, (hongBaoInfo.getSubMoney().indexOf(".") > -1 ? hongBaoInfo.getSubMoney().indexOf(".") : hongBaoInfo.getSubMoney().length()), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
        viewHolder.tv_sub_money.setText(hbMoney);
        viewHolder.tv_sub_money.setCompoundDrawablePadding(DimenUtils.dip2px(mContext, 8));
        if (fanli) {
            viewHolder.tv_sub_money.setCompoundDrawablesWithIntrinsicBounds(R.drawable.icon_goods_detail_hongbao_fanli, 0, 0, 0);
        if (hongBao) {
            if (fanli) {
                viewHolder.tv_sub_money.setCompoundDrawablesWithIntrinsicBounds(R.drawable.icon_goods_detail_hongbao_fanli, 0, 0, 0);
            } else {
                viewHolder.tv_sub_money.setCompoundDrawablesWithIntrinsicBounds(R.drawable.icon_goods_detail_hongbao_hb, 0, 0, 0);
            }
            viewHolder.tv_sub_money_desc.setTextSize(9);
            SpannableString finalMoney = new SpannableString(hongBaoInfo.getFinalMoney());
            finalMoney.setSpan(new RelativeSizeSpan(1.77f), 1, (hongBaoInfo.getFinalMoney().indexOf(".") > -1 ? hongBaoInfo.getFinalMoney().indexOf(".") : hongBaoInfo.getFinalMoney().length()), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
            viewHolder.tv_final_money.setText(finalMoney);
        } else {
            viewHolder.tv_sub_money.setCompoundDrawablesWithIntrinsicBounds(R.drawable.icon_goods_detail_hongbao_hb, 0, 0, 0);
            viewHolder.tv_sub_money.setCompoundDrawablesWithIntrinsicBounds(R.drawable.icon_goods_detail_hongbao_coupon, 0, 0, 0);
            viewHolder.tv_sub_money_desc.setTextSize(12);
            viewHolder.tv_final_money.setText("");
        }
        SpannableString finalMoney = new SpannableString(hongBaoInfo.getFinalMoney());
        finalMoney.setSpan(new RelativeSizeSpan(1.77f), 1, (hongBaoInfo.getFinalMoney().indexOf(".") > -1 ? hongBaoInfo.getFinalMoney().indexOf(".") : hongBaoInfo.getFinalMoney().length()), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
        viewHolder.tv_final_money.setText(finalMoney);
        viewHolder.tv_sub_money_desc.setText(hongBaoInfo.getSubMoneyDesc() == null ? "" : hongBaoInfo.getSubMoneyDesc());
        //简介
        if (StringUtils.isNullOrEmpty(hongBaoInfo.getDesc())) {
@@ -102,6 +127,27 @@
        }
        viewHolder.tv_level_desc.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (StringUtils.isNullOrEmpty(hongBaoInfo.getUserLevel().getLink())) {
                    return;
                }
                mContext.startActivity(new Intent(mContext, ShareBrowserActivity.class).putExtra("url", hongBaoInfo.getUserLevel().getLink()));
            }
        });
        viewHolder.fl_main.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (hongBao)
                    listClickListener.onHongBaoClick(p, hongBaoInfo);
                else {
                    listClickListener.onCouponClick(p);
                }
            }
        });
    }
@@ -109,21 +155,28 @@
     * @param fanli  是否返利
     * @param simple 是否为简单模式
     */
    private void setShowMode(ViewHolder viewHolder, boolean fanli, boolean simple) {
    private void setShowMode(ViewHolder viewHolder, boolean fanli, boolean simple, boolean hongBao) {
        GradientDrawable moreBg = new GradientDrawable();
        moreBg.setCornerRadius(DimenUtils.dip2px(mContext, 5));
        if (fanli) {
            viewHolder.fl_main.setBackgroundResource(R.drawable.shape_goods_detail_hongbao_bg);
            viewHolder.ll_hongbao_detail.setBackgroundResource(R.drawable.ic_goods_detail_hongbao_detail_fanli);
            moreBg.setColor(Color.parseColor("#35A30E"));
            viewHolder.iv_more.setImageResource(R.drawable.icon_goods_detail_hongbao_fanli_more);
        if (hongBao) {
            if (fanli) {
                viewHolder.fl_main.setBackgroundResource(R.drawable.shape_goods_detail_hongbao_bg);
                viewHolder.ll_hongbao_detail.setBackgroundResource(R.drawable.ic_goods_detail_hongbao_detail_fanli);
                moreBg.setColor(Color.parseColor("#35A30E"));
                viewHolder.iv_more.setImageResource(R.drawable.icon_goods_detail_hongbao_fanli_more);
            } else {
                viewHolder.fl_main.setBackgroundResource(R.drawable.shape_goods_detail_hongbao_high_level_bg);
                viewHolder.ll_hongbao_detail.setBackgroundResource(R.drawable.ic_goods_detail_hongbao_detail_hb);
                moreBg.setColor(Color.parseColor("#EC1F3F"));
                viewHolder.iv_more.setImageResource(R.drawable.icon_goods_detail_hongbao_hb_more);
            }
        } else {
            viewHolder.fl_main.setBackgroundResource(R.drawable.shape_goods_detail_hongbao_high_level_bg);
            viewHolder.ll_hongbao_detail.setBackgroundResource(R.drawable.ic_goods_detail_hongbao_detail_hb);
            moreBg.setColor(Color.parseColor("#EC1F3F"));
            viewHolder.iv_more.setImageResource(R.drawable.icon_goods_detail_hongbao_hb_more);
            viewHolder.fl_main.setBackgroundResource(R.drawable.shape_goods_detail_coupon_bg);
        }
        viewHolder.fl_more.setBackground(moreBg);
@@ -242,5 +295,11 @@
        }
    }
    public interface ListClickListener {
        public void onHongBaoClick(int p, GoodsDetailVO.GoodsHongBaoListVO info);
        public void onCouponClick(int p);
    }
}