有关RecyclerView的用法java
RecyclerView添加点击监听第一种方法:ide
在自定义的Adapter中的,onBindViewHolder方法中设置函数
@Override public void onBindViewHolder(LinearViewHolder holder, int position) { //将条目信息设置上 Student stu = (Student) mList.get(position); holder.idTv.setText(""+stu.getId()); holder.nameTv.setText(stu.getName()); //添加点击监听事件 holder.itemView.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Toast.makeText(mContext, "我被点击了", Toast.LENGTH_SHORT).show(); } }); }
第二种方法:经过回调post
在自定义的Adapter中建立一个接口this
//而后声明 private OnItemClickListener listener; //而后建立构造函数,传入一个listener //而后在onBindViewHolder方法中将postion传入进去,以下 /* holder.itemView.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { listener.onClick(position); } }); */ //而后再外面,参数中传入new .. public interface OnItemClickListener{ void onClick(int pos); }
recyclerView.setAdapter(new LinearAdapter(this, ls, new LinearAdapter.OnItemClickListener() { @Override public void onClick(int pos) { Toast.makeText(RecyclerActivity.this, "点击了"+pos, Toast.LENGTH_SHORT).show(); } }));