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.CardInfoListResult;
|
import com.dayu.qiheonlinelibrary.bean.UserListResult;
|
import com.dayu.qiheonlinelibrary.databinding.QiheLineItemUserBinding;
|
import com.dayu.qiheonlinelibrary.databinding.QiheLineItenCardBinding;
|
|
import java.util.List;
|
|
/**
|
* author: zuo
|
* Date: 2024-08-08
|
* Time: 17:26
|
* 备注:
|
*/
|
public class CardAdapter extends BaseRecyclerAdapter<RecyclerView.ViewHolder> {
|
|
List<CardInfoListResult.Records> records;
|
Context mContext;
|
OnItemClickListener onItemClickListener;
|
|
public interface OnItemClickListener {
|
void onItemClick(int position);
|
}
|
|
public CardAdapter(Context context, List<CardInfoListResult.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 {
|
QiheLineItenCardBinding binding = DataBindingUtil.inflate((LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE), R.layout.qihe_line_iten_card, 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 {
|
CardInfoListResult.Records record = records.get(position);
|
((ViewHolder) holder).getBinding().cardId.setText(record.getIccardNum());
|
((ViewHolder) holder).getBinding().userCode.setText(record.getIccardCode());
|
((ViewHolder) holder).getBinding().balance.setText(record.getIccardBalanceMoney() + "元");
|
((ViewHolder) holder).getBinding().totalMorny.setText(record.getTotalRechargeMoney() + "元");
|
((ViewHolder) holder).getBinding().balanceElectic.setText(record.getIccardBalanceElectric());
|
((ViewHolder) holder).getBinding().lastRechargeTime.setText("最后充值时间:" + record.getLastRechargeTime());
|
if (record.getIccardStatus() == 0) {
|
((ViewHolder) holder).getBinding().state.setText("正常");
|
} else if (record.getIccardStatus() == 1) {
|
((ViewHolder) holder).getBinding().state.setText("已注销");
|
} else {
|
((ViewHolder) holder).getBinding().state.setText("已挂失");
|
}
|
((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 {
|
QiheLineItenCardBinding mBinding;
|
|
public QiheLineItenCardBinding getBinding() {
|
return mBinding;
|
}
|
|
public void setBinding(QiheLineItenCardBinding binding) {
|
this.mBinding = binding;
|
}
|
|
public ViewHolder(QiheLineItenCardBinding itemView) {
|
super(itemView.getRoot());
|
this.mBinding = itemView;
|
|
}
|
}
|
}
|