关于在recycleview中点击item获取对应的viewholder的方法

原创 2016年06月02日 10:07:42

关于在recycleview中点击item获取对应的viewholder的方法

当使用recyclerView+CardView的时候,有时可能需要点击某一个item对其中的view进行操作,这时需要先获取点击的item的viewHolder。

第一步: 在onBindViewHolder中 对viewHolder 使用setTag给对应的viewHolder添加Tag。

public void onBindViewHolder(ViewHolder holder, int position) {

    //setTag为当前view添加状态,之后直接点击调用getTag便可获取其position
    holder.itemView.setTag(position);
    //当然也可以将数据传给setTag
    //eg. holder.itmeView.setTag(data[position]);
}

第二步 : 在相应的onClick中使用getTag获取对应的position

getState((Integer) v.getTag());

第三部: 通过recyclerView的方法获取当前点击的itemView:

private void getState(int position){
ViewHolder viewHolder = (ViewHolder)mRecyclerView.getChildViewHolder(mRecyclerView.getChildAt(position));
}

以上。

版权声明:本文为博主原创文章,未经博主允许不得转载。

关于在外部拿到RecyclerView的viewholder的几种方式

在实际开发中,我们常常碰到这样的需求,需要在外部拿到RecyclerView 中的viewHoler,从而动态的修改UI,在RecyclerView中,我们需要自己封装点击事件,一般的做法是在recy...

Android开发中动态获取RecyclerView的Item中EditText的内容

使用RecyclerView实现这种效果,其Item由一个TextView和一个EditText组成。用户填写相应数据,点击保存按钮,我要对用户输入的数据进行处理。这里我就要获取EditText的内容...

android RecyclerView获得单个Item的ViewHolder

我们在使用RecyclerView时,有时候还需要获取某个Item的viewHolder,具体如下: int firstItemPosition = layoutManager.findFirstVi...
  • jdsjlzx
  • jdsjlzx
  • 2016年02月25日 11:02
  • 16458

关于RecylerView的初探

好久没有出来嫖了,哦不对是好久没有出来浪了。之前发了一个很简单的TestParallax的小小的demo,经过自己不要脸的,丧心病狂的在几个群里面求大婶们的Star,终于到了10颗了。本来打算写一个P...

android RecyclerView获得单个Item的ViewHolder

我们在使用RecyclerView时,有时候还需要获取某个Item的viewHolder,具体如下: LinearLayoutManager layoutManager= new Linea...

自定义RecycleView实现TV应用上的item焦点获取以及设置当前选中的item居中

RecycleView是个强大的控件,能代替ListView,GridView,还能实现瀑布流,还能实现横向ListView,只需要一句代码就能使纵向ListView变成横向的(主要实现就在布局管理器...

recycleview获取第一个和最后一个可见item的位置

recycleview 的名字是FoodsNameRecycle FoodsNameRecycle.setOnScrollListener(new RecyclerView.OnScrollListe...

Recyclerview.getLayoutPosition()问题

使用Recyclerview 时,如果要添加item的点击监听等功能,可以在Recyclerview.Adapter的onBindViewHolder中设置 例如: @Override public...
  • trojx2
  • trojx2
  • 2016年02月22日 23:43
  • 8410

解决RecyclerView.getChildAt(Position)崩溃

问题:程序中,屏幕可以获取到6个子view.当getChildAt() ,position为6或者为7的时候,程序崩溃,报空指针的异常.     实际上:getChildAt()这个方法,只能get...

View.setTag()和View.getTag()使用指南

关于View.setTag()和View.getTag()结合使用的例子很多,Google, stackoverflow上面一堆,就不再赘述了,随便一搜就有。 经典的使用例子: 三部分:视图初始化、保...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:关于在recycleview中点击item获取对应的viewholder的方法
举报原因:
原因补充:

(最多只允许输入30个字)