package com.doumee.lib_coremodel.base; import android.content.Context; import androidx.recyclerview.widget.RecyclerView; import java.util.ArrayList; import java.util.List; public abstract class RcvBaseAdapter extends RecyclerView.Adapter { public interface DeletItemListener{ void delet(int position); } public interface ItemLongClickListener{ void onLongClick(int position); } public interface ItemClickListener{ void onClick(int position); } protected ItemClickListener clickListener; protected Context context; protected List datas=new ArrayList<>(); public RcvBaseAdapter(Context context) { this.context = context; } public ItemClickListener getClickListener() { return clickListener; } public void setClickListener(ItemClickListener clickListener) { this.clickListener = clickListener; } public void addData(List data1) { try { if (data1 != null) { int s=datas.size(); datas.addAll(data1); if(s==0){ notifyDataSetChanged(); }else { notifyItemRangeInserted(s,data1.size()); } } }catch (Exception e){ } } public void refrenshData(List data1) { if (data1 != null ) { datas.clear(); addData(data1); } } public void removeDataByPosition(int position) { if (position >= 0 && position < datas.size()) { datas.remove(position); notifyItemRemoved(position); } } public D getDataByPosition(int position) { if (position >= 0 && position < datas.size()) { return datas.get(position); } return null; } public void clearData(){ datas.clear(); notifyDataSetChanged(); //Phoenix.clearCaches(); } public List getDatas() { return datas; } @Override public int getItemCount() { return datas.size(); } }