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相关------------------------------------------
|