处理RecyclerView的点击事项

原创 2017年05月19日 14:51:12

之前作者只是建立了不能响应点击事件的RecyclerView,然而需要实现RecyclerView的点击事件,就需要建立一个接口(在适配器中)。

之前操作的链接
http://blog.csdn.net/maokai1229/article/details/72123600
因为在适配器的ViweHolder中,会有许多Item的新建,而把item看成一个按钮,就需要事先实现按钮的接口(这里不需要考虑在Item的布局文件中声明onClick,因为设立涉及多个按钮响应)

1.在适配器中建立一个接口

  public interface ListItemClickListener {
        void onListItemClick(int id);
    }

2.声明接口 ,这个接口并不在适配器中实现,而是在Activity中,声明接口是为了在构造方法中传入。

 public GreenAdapter(int numberOfItems, ListItemClickListener mOnClickListener) {
        mNumberItems = numberOfItems;
        this.mOnClickListener=mOnClickListener;

        viewHolderCount = 0;
    }

3.在ViewHolder中引入onClickListener接口 ,在这里的position就相当于控件的ID。

        @Override
        public void onClick(View view) {
            int position = getAdapterPosition();//获取用户点击的item的位置
            mOnClickListener.onListItemClick(position);
        }

4最后在Activity中实现点击事件的具体逻辑。

 @Override
    public void onListItemClick(int id){
        if(mToast!=null){
            mToast.cancel();
        }//防止Toast在队列中等待,出现消息提示滞后的情况
        String show="Item :"+id+"was clicked";
        mToast=Toast.makeText(this,show,Toast.LENGTH_LONG);
        mToast.show();
    }
版权声明:转载请注明出处

LinearLayout嵌套RecycleView后无法点击,onClick失效的问题

今天在做项目时,写到了一个LinearLayout里面嵌套了RecycleView后,LinearLayout.setOnCilckListener没反应的问题,我认为是RecycleView截获了c...
  • u011987034
  • u011987034
  • 2016年10月18日 10:14
  • 2425

10.RecyclerView中的item点击事件,如何实现

recyclerview的使用方法和listview大同小异,但是使用的adapter确实非常不一样: 1.需要在adapter声明onclickListener()接口, 2.然后创建接口对象, 3...
  • Zuo_XP
  • Zuo_XP
  • 2016年10月11日 09:50
  • 736

RecyclerView布局的点击(并非item的点击)

近期在开发过程中,遇到这样的一个需求:横向列表点击跳转。                               也算是几年的老开发,第一个想到的当然是HorizontalListView.  ...
  • u010351988
  • u010351988
  • 2017年01月09日 17:14
  • 980

Recyclerview点击条目进行跳转,把position和具体的实体进行对应

传递的是list集合,传递整个对象PadComplainAdapter mPadComplainAdapter = new PadComplainAdapter(mContext, mCompl...
  • xiyangyang8110
  • xiyangyang8110
  • 2017年07月18日 15:47
  • 629

妹子图APP(三)—— RecyclerView的Item点击事件和图片保存至本地

妹子图APP(三)—— RecyclerView的Item点击事件的设置、页面跳转以及图片保存至本地图库。...
  • ww897532167
  • ww897532167
  • 2017年03月03日 09:34
  • 534

RecyclerView(一)点击事件的两种方式

recyclerview自身不带有点击事件的回调,以下实现recyclerview点击事件的两种方式1、通过接口回调的方式:直接上代码加注释 1、首先定义点击的接口public interface ...
  • Sunyard_HQL
  • Sunyard_HQL
  • 2017年01月13日 18:36
  • 2751

给RecyclerView的Item添加点击事件

RecyclerView监听事件处理在ListView使用的时候,该控件给我们提供一个onItemClickListener监听器,这样当我们点击Item的时候,会回调相关的方法,以便我们方便处理It...
  • u013184970
  • u013184970
  • 2017年04月25日 15:42
  • 2833

Android实现RecyclerView自动点击Item中的控件

最近做的项目需要完成当下载任务来临时,APP自动下载这个任务。只是把文件下载下来很简单,但是要更新UI的话就比较麻烦,如果能够实现自动点击Item中的Button的效果,就很简单了。 一、问题 但是...
  • u013121097
  • u013121097
  • 2017年04月25日 15:36
  • 1428

详解Android中回调机制与RecyclerView的Item点击事件实现

利用RecyclerView的例子,解释回调的概念。 实现RecyclerView的详细Item点击事件。...
  • u014561933
  • u014561933
  • 2017年01月04日 19:58
  • 1215

RecyclerView实现滚动滑动以及点击改变控件颜色

项目中需要横向滚动效果,按照以前的思路,我会写一个ScrollView,里边加一个LinearLayout,在代码中动态加入控件,然后动态删除或者改变颜色,现在android有了新控件Recycler...
  • jifashihan
  • jifashihan
  • 2016年07月12日 14:48
  • 7575
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:处理RecyclerView的点击事项
举报原因:
原因补充:

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