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 implements View.OnClickListener, View.OnLongClickListener { private List mList; private boolean mShowCheckBox; private OnItemClickListener mItemClickListener; private OnRemoveListener mOnRemoveListener; public void setDataList(List 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相关------------------------------------------