RecyclerView 的点击事件!
2016-12-28 16:37
120 查看
本文参照原文地址:http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0327/2647.html
作者:泡在网上的日子!
使用方法:
adapter代码如下:
使用的话就是用adapter调用setItemClick方法:
作者:泡在网上的日子!
使用方法:
adapter代码如下:
public class AttachmentMaterAdapter extends RecyclerView.Adapter<AttachmentMaterAdapter.AttachmentMaterHolder> implements OnClickListener{ private Context context; private List<MaterialBean> materLists; private OnRecyclerViewItemClickListener mOnItemClickListener = null; public AttachmentMaterAdapter(Context context, List<MaterialBean> materLists) { this.context = context; this.materLists = materLists; } public static interface OnRecyclerViewItemClickListener { void onItemClick(View view , MaterialBean materDatas); } @Override public AttachmentMaterHolder onCreateViewHolder(ViewGroup parent, int viewType) { View view= LayoutInflater.from(context).inflate(R.layout.material_list_item,null); AttachmentMaterHolder holder=new AttachmentMaterHolder(view); view.setOnClickListener(this); return holder; } @Override public void onBindViewHolder(AttachmentMaterHolder holder, int position) { MaterialBean info=materLists.get(position); holder.itemView.setTag(info); if(info!=null){ holder.icon.setBackgroundResource(info.getIcon()); holder.textView.setText(info.getName()); } } @Override public int getItemCount() { return materLists.size(); } public class AttachmentMaterHolder extends ViewHolder{ private ImageView icon; private TextView textView; public AttachmentMaterHolder(View itemView) { super(itemView); icon= (ImageView) itemView.findViewById(R.id.icon); textView= (TextView) itemView.findViewById(R.id.text); } } @Override public void onClick(View v) { if (mOnItemClickListener != null) { //注意这里使用getTag方法获取数据 mOnItemClickListener.onItemClick(v,(MaterialBean)v.getTag()); } } public void setOnItemClickListener(OnRecyclerViewItemClickListener listener) { this.mOnItemClickListener = listener; } }
使用的话就是用adapter调用setItemClick方法:
if(materLists!=null&&materLists.size()>0){ materAdapter=new AttachmentMaterAdapter(MaterialViewActivity.this,materLists); material_folad_list.setLayoutManager(new LinearLayoutManager(MaterialViewActivity.this)); material_folad_list.setItemAnimator(new DefaultItemAnimator()); material_folad_list.addItemDecoration(new DividerItemDecoration( MaterialViewActivity.this, DividerItemDecoration.VERTICAL_LIST)); material_folad_list.setAdapter(materAdapter); materAdapter.setOnItemClickListener(new AttachmentMaterAdapter.OnRecyclerViewItemClickListener() { @Override public void onItemClick(View view,MaterialBean materDatas) { //处理itemClick点击事件。。。。。。。。。。。。 } }); }
相关文章推荐
- Android RecyclerView 的点击事件
- RecyclerView 给Item添加点击事件
- 【Android 界面效果48】Android-RecyclerView-Item点击事件设置
- RecyclerView实现九宫格和点击事件
- RecyclerView的使用(包含点击事件)
- RecyclerView 点击事件
- Android-UI布局---RecyclerView学习(一)在适配器中自定义长按和点击事件
- RecyclerView点击事件、加载不同布局
- RecyclerView Item 的点击事件
- 为RecyclerView添加item的点击事件
- Android-RecyclerView-Item点击事件设置
- android RecyclerView响应点击事件(二)
- RecyclerView实现上拉刷新,下拉加载,item点击事件
- RecyclerView 初次体验,实现增加删除条目及item长按和点击事件
- 【Android 界面效果48】Android-RecyclerView-Item点击事件设置
- RecyclerView点击事件
- RecyclerView的点击事件,下拉刷新,上拉加载(Android5.0)
- RecyclerView设置Item点击事件
- RecyclerView点击事件OnItemClick的两种实现方式
- RecyclerView 使用总结(三):点击事件、GridView等、瀑布流、动态增删