RecyclerView自定义基础通用Adapter和ViewHolder
仅建立一个adapter,配合自定义布局holder,轻松搞定各种RecyclerView布局使用。
1、首先建立BaseViewHolder基础类
public abstract class BaseViewHolder<T> extends RecyclerView.ViewHolder implements View.OnClickListener,View.OnLongClickListener{
public MyAdapterListener myAdapterListener;
protected Context context;
public BaseViewHolder(Context context, ViewGroup root, int layoutRes, MyAdapterListener listener) {
super(LayoutInflater.from(context).inflate(layoutRes, root, false));
this.context=context;
this.myAdapterListener =listener;
itemView.setOnClickListener(this);
itemView.setOnLongClickListener(this);
}
public Context getContext() {
return itemView.getContext();
}
public abstract void bindData(T t);
@Override
public void onClick(View v) {
if(myAdapterListener !=null){
myAdapterListener.onItemClick(getAdapterPosition());
}
}
@Override
public