package com.dayu.qiheonlinelibrary.adapter;
|
|
import android.content.Context;
|
import android.view.LayoutInflater;
|
import android.view.ViewGroup;
|
|
import androidx.annotation.NonNull;
|
import androidx.databinding.DataBindingUtil;
|
import androidx.recyclerview.widget.RecyclerView;
|
|
import com.dayu.baselibrary.databinding.ItemNoMoreBinding;
|
import com.dayu.qiheonlinelibrary.R;
|
import com.dayu.qiheonlinelibrary.bean.UserListResult;
|
import com.dayu.qiheonlinelibrary.databinding.QiheLineItemUserBinding;
|
|
import java.util.List;
|
|
/**
|
* author: zuo
|
* Date: 2024-08-08
|
* Time: 10:13
|
* 备注:
|
*/
|
public class UserSearchAdapter extends BaseRecyclerAdapter<RecyclerView.ViewHolder> {
|
|
List<UserListResult.Records> records;
|
Context mContext;
|
OnItemClickListener onItemClickListener;
|
|
public interface OnItemClickListener {
|
void onItemClick(int position);
|
}
|
|
public UserSearchAdapter(Context context, List<UserListResult.Records> rechargeList, OnItemClickListener onItemClickListener) {
|
mContext = context;
|
this.onItemClickListener = onItemClickListener;
|
this.records = rechargeList;
|
}
|
|
|
@NonNull
|
@Override
|
public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
|
if (viewType == VIEW_TYPE_EMPTY) {
|
ItemNoMoreBinding emptyView = DataBindingUtil.inflate((LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE), com.dayu.baselibrary.R.layout.item_no_more, parent, false);
|
return new ViewHolderEmpty(emptyView);
|
} else {
|
QiheLineItemUserBinding binding = DataBindingUtil.inflate((LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE), R.layout.qihe_line_item_user, parent, false);
|
|
return new ViewHolder(binding);
|
}
|
|
}
|
|
@Override
|
public void onBindViewHolder(@NonNull RecyclerView.ViewHolder holder, int position) {
|
if (holder instanceof ViewHolder) {
|
if (records.size() > 0) {
|
try {
|
((ViewHolder) holder).getBinding().userName.setText(records.get(position).getPeasantName());
|
((ViewHolder) holder).getBinding().cardID.setText(records.get(position).getPeasantIdNumber());
|
((ViewHolder) holder).getBinding().phone.setText(records.get(position).getPeasantPhone());
|
((ViewHolder) holder).getBinding().address.setText(records.get(position).getAdcdName());
|
((ViewHolder) holder).getBinding().state.setText(records.get(position).getState() == 0 ? "未启用" : "启用");
|
((ViewHolder) holder).getBinding().item.setOnClickListener(v -> onItemClickListener.onItemClick(position));
|
} catch (Exception e) {
|
e.printStackTrace();
|
}
|
}
|
}
|
}
|
|
@Override
|
public int getItemCount() {
|
//同时这里也需要添加判断,如果mData.size()为0的话,只引入一个布局,就是emptyView
|
// 那么,这个recyclerView的itemCount为1
|
if (records.size() == 0) {
|
return 1;
|
}
|
return records.size();
|
}
|
|
@Override
|
public int getItemViewType(int position) {
|
if (records.size() == 0) {
|
return VIEW_TYPE_EMPTY;
|
} else {
|
return VIEW_TYPE_ITEM;
|
}
|
}
|
|
|
static class ViewHolder extends RecyclerView.ViewHolder {
|
QiheLineItemUserBinding mBinding;
|
|
public QiheLineItemUserBinding getBinding() {
|
return mBinding;
|
}
|
|
public void setBinding(QiheLineItemUserBinding binding) {
|
this.mBinding = binding;
|
}
|
|
public ViewHolder(QiheLineItemUserBinding itemView) {
|
super(itemView.getRoot());
|
this.mBinding = itemView;
|
|
}
|
}
|
}
|