CommonAdapter
public abstract class CommonAdapter<T> extends RecyclerView.Adapter<ViewHolder> {
protected Context mContext;
LayoutInflater mInflater;
List<T> mDatas;
public CommonAdapter(Context context, List<T> data) {
this.mContext = context;
this.mDatas = data;
mInflater = LayoutInflater.from(context);
}
@NonNull
@Override
public ViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {
View view = mInflater.inflate(getLayoutId(), viewGroup, false);
return new ViewHolder(view);
}
@Override
public void onBindViewHolder(@NonNull ViewHolder viewHolder, int i) {
convert(viewHolder, mDatas.get(i), i);
}
@Override
public int getItemCount() {
return mDatas.size();
}
public abstract int getLayoutId();
public abstract void convert(ViewHolder