package com.moral.andbrickslib.baseadapter.recyclerview; import android.content.Context; import android.support.v7.widget.RecyclerView; import android.view.LayoutInflater; import com.moral.andbrickslib.baseadapter.recyclerview.base.ItemViewDelegate; import com.moral.andbrickslib.baseadapter.recyclerview.base.ViewHolder; import java.util.List; /** * Created by zhy on 16/4/9. */ public abstract class CommonAdapter extends MultiItemTypeAdapter { protected Context mContext; protected int mLayoutId; protected List mDatas; protected LayoutInflater mInflater; public CommonAdapter(final RecyclerView v, final int layoutId, List datas) { super(v, datas); mContext = v.getContext(); mInflater = LayoutInflater.from(mContext); mLayoutId = layoutId; mDatas = datas; addItemViewDelegate(new ItemViewDelegate() { @Override public int getItemViewLayoutId() { return layoutId; } @Override public boolean isForViewType( T item, int position) { return true; } @Override public void convert(ViewHolder holder, T t, int position) { CommonAdapter.this.convert(holder, t, position); } }); } protected abstract void convert(ViewHolder holder, T t, int position); }