doum
6 天以前 2b287056e2f59518888d05a1bbc7e5a55fbd84d5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
package com.doumee.keyCabinet.ui.face.adapter;
 
 
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.CheckBox;
import android.widget.TextView;
 
import androidx.recyclerview.widget.RecyclerView;
 
import com.doumee.keyCabinet.MApplication;
import com.doumee.keyCabinet.R;
import com.doumee.lib_coremodel.http.utils.FrescoUtils;
import com.example.datalibrary.listener.OnItemClickListener;
import com.example.datalibrary.listener.OnRemoveListener;
import com.example.datalibrary.model.User;
import com.facebook.drawee.view.SimpleDraweeView;
 
import java.util.List;
 
public class FaceUserAdapter extends RecyclerView.Adapter<FaceUserAdapter.FaceUserViewHolder> implements
        View.OnClickListener, View.OnLongClickListener {
    private List<User> mList;
    private boolean mShowCheckBox;
    private OnItemClickListener mItemClickListener;
    private OnRemoveListener mOnRemoveListener;
 
    public void setDataList(List<User> list) {
        mList = list;
    }
 
    public void setShowCheckBox(boolean showCheckBox) {
        mShowCheckBox = showCheckBox;
    }
 
    public void setItemClickListener(OnItemClickListener itemClickListener) {
        mItemClickListener = itemClickListener;
    }
 
    public void setOnRemoveListener(OnRemoveListener onRemoveListener) {
        this.mOnRemoveListener = onRemoveListener;
    }
 
    @Override
    public FaceUserViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        LayoutInflater layoutInflater = LayoutInflater.from(parent.getContext());
        View view = layoutInflater.inflate(R.layout.item_register_user_list, parent, false);
        FaceUserViewHolder viewHolder = new FaceUserViewHolder(view);
        view.setOnClickListener(this);
        view.setOnLongClickListener(this);
        return viewHolder;
    }
 
    @Override
    public void onBindViewHolder(FaceUserViewHolder holder, int position) {
        holder.itemView.setTag(position);
        // 是否显示多选按钮
        if (mShowCheckBox) {
            holder.checkView.setVisibility(View.VISIBLE);
            if (mList.get(position).isChecked()) {
                holder.checkView.setChecked(true);
            } else {
                holder.checkView.setChecked(false);
            }
        } else {
            holder.checkView.setVisibility(View.GONE);
        }
        // 添加数据
        holder.text_user_ctime.setText(mList.get(position).getId()+"");
        holder.textUserName.setText(mList.get(position).getUserName());
        holder.textSf.setText(mList.get(position).getGroupId().equals("0")?
                MApplication.mContext.getString(R.string.face_hy) :MApplication.mContext.getString(R.string.face_xy));
        FrescoUtils.displayImageFresco(mList.get(position).getImageName(),holder.circleUserHead);
    }
 
    @Override
    public int getItemCount() {
        return mList != null ? mList.size() : 0;
    }
 
    @Override
    public void onClick(View v) {
        if (mItemClickListener != null) {
            mItemClickListener.onItemClick(v, (Integer) v.getTag());
        }
    }
 
    @Override
    public boolean onLongClick(View view) {
        if (mOnRemoveListener != null) {
            mOnRemoveListener.onRemove((Integer) view.getTag());
        }
        return true;
    }
    protected static class FaceUserViewHolder extends RecyclerView.ViewHolder {
        private View itemView;
        private SimpleDraweeView circleUserHead;
        private TextView textUserName;
        private TextView textSf;
        private TextView text_user_ctime;
        private CheckBox checkView;
 
        private FaceUserViewHolder(View itemView) {
            super(itemView);
            this.itemView = itemView;
            circleUserHead = itemView.findViewById(R.id.circle_user);
            textUserName = itemView.findViewById(R.id.text_user_name);
            checkView = itemView.findViewById(R.id.check_btn);
            textSf = itemView.findViewById(R.id.text_sf);
            text_user_ctime = itemView.findViewById(R.id.text_user_ctime);
        }
    }
}    // ----------------------------------------adapter相关------------------------------------------