一.前言
最近使用到RecyclerView,RecyclerView使用详解戳这里,由于使用过张鸿洋大神的ListView万能Adapter,感觉RecyclerView的Adapter编写还是太麻烦了,而且没有点击事件,ok,参考ListView的万能Adapter的思路,写一个RecyclerView通用的Adapter,在加上点击效果( ̄︶ ̄)↗ 涨
二.代码编写
- RecyclerAdapter的编写
package com.example.admin.recyclerviewdemo;
import android.content.Context;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import java.util.List;
/**
* Created by 橘子桑 on 2016/1/2.
*/
public abstract class RecyclerAdapter<T> extends RecyclerView.Adapter<RecyclerViewHolder> {
private Context mContext;
private List<T> mDatas;
private int mLayoutId;
private LayoutInflater mInflater;
private OnItemClickListener onItemClickListener;
public RecyclerAdapter(Context mContext, List<T> mDatas, int mLayoutId) {
this.mContext = mContext;
this.mDatas = mDatas;
this.mLayoutId = mLayoutId;
mInflater = LayoutInflater.from(mContext);
}
@Override
public RecyclerViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
//这里是创建ViewHolder的地方,RecyclerAdapter内部已经实现了ViewHolder的重用
//这里我们直接new就好了
return new RecyclerViewHolder(mInflater.inflate(mLayoutId, parent, false));
}
@Override
public void onBindViewHolder(RecyclerViewHolder holder, int positi