单选,改变背景颜色

package cn.parteam.pd.newEvent.Adapter;

import android.content.Context;
import android.support.v7.widget.RecyclerView;
import android.view.View;
import android.view.ViewGroup;
import android.widget.LinearLayout;
import android.widget.TextView;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;

import cn.parteam.pd.R;
import cn.parteam.pd.newEvent.been.EventBeen;

/**
 * Created by admin on 2018/3/30.
 */

public class MatchAdapter extends RecyclerView.Adapter {
    private Context context;
    ArrayList<EventBeen.AttributeBean.MatchBean.MatchEventsBean> matchBean = new ArrayList<>();
    private ViewHoudler viewHoudler;
    private int number;
    private HashMap<Integer, Boolean> map = new HashMap<>();
    public MatchAdapter(Context context, ArrayList<EventBeen.AttributeBean.MatchBean.MatchEventsBean> matchBean,int number) {
        this.context = context;
        this.matchBean = matchBean;
        this.number=number;
        for (int a = 0; a < matchBean.size(); a++) {
            map.put(a, false);
        }
    }

    @Override
    public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        View inflate = View.inflate(context, R.layout.match_item, null);
        viewHoudler = new ViewHoudler(inflate);
        return viewHoudler;
    }

    @Override
    public void onBindViewHolder(RecyclerView.ViewHolder holder, final int position) {
        viewHoudler= (ViewHoudler) holder;
        viewHoudler.name.setText(matchBean.get(position).getEventName());
        if(matchBean.get(position).getFee()==0){
            viewHoudler.maney.setText("免费");
            viewHoudler.maney.setTextColor(333333);
        }else {
            viewHoudler.maney.setText(matchBean.get(position).getFee()+"");
            viewHoudler.people.setText("元/人");
        }
        if(matchBean.get(position).getMaxTeam()==0){
            viewHoudler.textView1.setText("无名额");

        }else {
            viewHoudler.textView.setText("剩余");
            int maxTeam = matchBean.get(position).getMaxTeam();
//           maxTeam-number;
            viewHoudler.number.setText(matchBean.get(position).getMaxTeam()+"");
            viewHoudler.textView1.setText("人");

        }
        try {
            if(map.get(position)){
              //  LinearLayout  linearLayout= (LinearLayout) v.findViewById(R.id.project);
                viewHoudler.project.setBackgroundResource(R.drawable.aaa);
                viewHoudler.surplus.setVisibility(View.VISIBLE);
            }else{
                viewHoudler.project.setBackgroundResource(R.drawable.mybord);
                viewHoudler.surplus.setVisibility(View.GONE);
            }
        }catch (Exception e){}

        viewHoudler.project.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                listen.setOnLongClick(v,position);
                listen.setSinglePrice(matchBean.get(position).getFee());
                map.put(position, !map.get(position));
                //刷新适配器
                notifyDataSetChanged();
                singlesel(position);
            }
        });
//        viewHoudler.surplus.setOnLongClickListener(new View.OnLongClickListener() {
//            @Override
//            public boolean onLongClick(View v) {
//                listen.setOnLongClick(v,position);
//
//                return false;
//
//            }
//        });

    }
    /**
     * 单选
     *
     * @param postion
     */
    public void singlesel(int postion) {
        Set<Map.Entry<Integer, Boolean>> entries = map.entrySet();
        for (Map.Entry<Integer, Boolean> entry : entries) {
            entry.setValue(false);
        }
        map.put(postion, true);
        notifyDataSetChanged();
    }
private Listener listen;
    //创建一个接口
   public interface Listener{
        void setOnLongClick(View v,int position);
        void setSinglePrice(float price);
    }

    public  void setOnItemLongClickListener(Listener listen){
        this.listen=listen;
    }
    @Override
    public int getItemCount() {
        return matchBean.size();
    }
    class ViewHoudler extends RecyclerView.ViewHolder {
        TextView maney;
        TextView name;
        TextView people;
        TextView number;
        TextView textView;
        TextView textView1;
        LinearLayout surplus;
        LinearLayout project;
        public ViewHoudler(View itemView) {
            super(itemView);
            maney= (TextView) itemView.findViewById(R.id.maney);
            name= (TextView) itemView.findViewById(R.id.name);
            people= (TextView) itemView.findViewById(R.id.people);
            number= (TextView) itemView.findViewById(R.id.number);
            textView= (TextView) itemView.findViewById(R.id.text);
            textView1= (TextView) itemView.findViewById(R.id.text1);
            surplus= (LinearLayout) itemView.findViewById(R.id.surplus);
            project= (LinearLayout) itemView.findViewById(R.id.project);

        }
    }
}
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值