适配器代码:
class MyRecyclerViewBase extends RecyclerView.Adapter<MyRecyclerViewBase.ViewHodler> implements View.OnClickListener { private Context context; private List<String> list; public MyRecyclerViewBase(Context context, List<String> list) { this.context = context; this.list = list; } @Override public ViewHodler onCreateViewHolder(ViewGroup parent, int viewType) { View v = View.inflate(context, R.layout.mybase, null); v.setOnClickListener(this); ViewHodler hodler = new ViewHodler(v); return hodler; } @Override public void onBindViewHolder(ViewHodler holder, final int position) { holder.tv.setText(list.get(position)); holder.image.setImageResource(R.drawable.ic_launcher_background); holder.itemView.setTag(position); } @Override public void onClick(View v) { if (mItemClickListener != null) { mItemClickListener.onItemClick((Integer) v.getTag()); } } class ViewHodler extends RecyclerView.ViewHolder { private final ImageView image; private final TextView tv; public ViewHodler(View v) { super(v); image = (ImageView) v.findViewById(R.id.imageView); tv = (TextView) v.findViewById(R.id.textView); } } @Override public int getItemCount() { return list.size(); } //增加 public void addData(int position, String data) { list.add(position, data); notifyItemInserted(position); } //删除 public void removeData(int position) { list.remove(position); notifyItemRemoved(position); } //定义接口 public interface OnItemClickListener { void onItemClick(int position); } //声明接口对象 private OnItemClickListener mItemClickListener; //判断 public void setItemClickListener(OnItemClickListener itemClickListener) { mItemClickListener = itemClickListener; } }