CouponAdapter.java 4.91 KB
package com.cnlive.goldenline.ui.adapter;

import android.content.Context;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.RelativeLayout;
import android.widget.TextView;

import com.cnlive.goldenline.R;
import com.cnlive.goldenline.model.mine.CnliveMyCouponPo;
import com.cnlive.goldenline.model.mine.IPage;
import com.cnlive.goldenline.ui.adapter.viewholder.EmptyViewHolder;
import com.cnlive.goldenline.ui.base.BaseRecyclerAdapter;
import com.cnlive.goldenline.ui.interfaces.RecyclerViewItemClickListener;
import com.cnlive.goldenline.util.PublicUtil;

/**
 * Description: 优惠券  适配器
 * Created on 2017/3/15
 * Author : 郭
 */
public class CouponAdapter extends BaseRecyclerAdapter<CnliveMyCouponPo> {
    private int background;
    private int selectItem = -1;

    private RecyclerViewItemClickListener<CnliveMyCouponPo> l;

    public CouponAdapter(Context context) {
        super(context);
    }

    public void setItemClickListener(RecyclerViewItemClickListener listener) {
        this.l = listener;
    }

    public void setSelectItem(int item){
        selectItem = item;
    }

    @Override
    public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        return new CouponViewHOlder(LayoutInflater.from(mContext).inflate(R.layout.layout_coupon_item, null));
    }

    @Override
    public void onBindViewHolder(RecyclerView.ViewHolder holder, final int position) {
        if (holder instanceof CouponViewHOlder) {
            ((CouponViewHOlder) holder).tv_coupon_title.setText(mItems.get(position).getCouponName());
            ((CouponViewHOlder) holder).tv_coupon_xz.setText("一次限使用一张优惠券");
            ((CouponViewHOlder) holder).tv_coupon_date.setText("有效期至:" + mItems.get(position).getEndITime());
            if(getItem(position).getSubstraction() == 0){//是打折券
                ((CouponViewHOlder) holder).tv_coupon_price.setText(PublicUtil.formatTextView(mContext, mItems.get(position).getMultiplication() + "", "折", R.style.textstyle_35_fff, R.style.textstyle_14_fff, 1));
            }else{//是减价券
                ((CouponViewHOlder) holder).tv_coupon_price.setText(PublicUtil.formatTextView(mContext, mItems.get(position).getSubstraction() + "", "金币", R.style.textstyle_35_fff, R.style.textstyle_14_fff, 2));
            }
            if (background == 1)//未使用
            {
                ((CouponViewHOlder) holder).ima_coupon_bg.setBackgroundResource(R.drawable.coupon_bg);
                ((CouponViewHOlder) holder).ima_coupon_sel.setVisibility((selectItem >= 0 && position == selectItem) ? View.VISIBLE : View.GONE);
                ((CouponViewHOlder) holder).ima_coupon_white.setImageResource(R.mipmap.coupon_tm_bg);
                ((CouponViewHOlder) holder).layout.setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {
                        if(l != null)
                            l.onItemClick(v,mItems.get(position),position,0);
                    }
                });
            } else if (background == 2) {//已使用
                //设置
                ((CouponViewHOlder) holder).ima_coupon_white.setImageResource(R.mipmap.coupon_tm_bg);
                ((CouponViewHOlder) holder).ima_coupon_bg.setBackgroundResource(R.mipmap.coupon_used_bg);
            } else //过期  白色覆盖物
            {
                ((CouponViewHOlder) holder).ima_coupon_white.setImageResource(R.mipmap.coupon_333_bg);
                ((CouponViewHOlder) holder).ima_coupon_bg.setBackgroundResource(R.mipmap.coupon_used_bg);
            }
        }

    }

    public void setBackground(int background) {
        this.background = background;
    }

    class CouponViewHOlder extends RecyclerView.ViewHolder {

        private ImageView ima_coupon_bg, ima_coupon_white, ima_coupon_sel;
        private TextView tv_coupon_price, tv_coupon_title, tv_coupon_xz, tv_coupon_date;
        private RelativeLayout rl_bg;
        private View layout;

        public CouponViewHOlder(View itemView) {
            super(itemView);
            ima_coupon_bg = (ImageView) itemView.findViewById(R.id.ima_coupon_bg);
            ima_coupon_white = (ImageView) itemView.findViewById(R.id.ima_coupon_white);
            ima_coupon_sel = (ImageView) itemView.findViewById(R.id.ima_coupon_sel);
            tv_coupon_price = (TextView) itemView.findViewById(R.id.tv_coupon_price);
            tv_coupon_title = (TextView) itemView.findViewById(R.id.tv_coupon_title);
            tv_coupon_xz = (TextView) itemView.findViewById(R.id.tv_coupon_xz);
            tv_coupon_date = (TextView) itemView.findViewById(R.id.tv_coupon_date);
            rl_bg = (RelativeLayout) itemView.findViewById(R.id.rl_bg);
            layout = itemView.findViewById(R.id.layout);
        }
    }
}