择忆霖心
2017-05-15 14:07
采纳率: 96.7%
浏览 2.1k

RecyclerView item点击事件

RecyclerView点击事件,比如有很多按钮,点第一个一个点击事件,点第二个执行另一个点击事情。请问怎么判断点的那个按钮,我以上所述的怎么可以执行?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

6条回答 默认 最新

  • 接口的说法 2017-05-18 06:37
    已采纳

    我这就是RecycleView多个点击事件啊, 在onBindViewHolder()方法写点击事件也没什么问题啊; 当然操作太多的话会显得比较臃肿, 这是可以考虑使用楼上说的回调
    图片说明

      holder.img.setOnClickListener(new View.OnClickListener() {
                        @Override
                        public void onClick(View v) {
                            DetailActivity.start(WholesaleDetailActivity.this,"2262946_164004");
                        }
                    });
                    holder.minus.setOnClickListener(new View.OnClickListener() {
                        @Override
                        public void onClick(View v) {
                            int num = NumberUtil.strToInt(holder.num.getText().toString().trim());
                            if (num > 0) {
                                holder.num.setText(String.valueOf(num - 1));
                                EventBus.getDefault().post(new WholesaleDetailEvent("minus", 4822));
                            }
                                                    ......
    
    点赞 打赏 评论
  • 点赞 打赏 评论
  • huohao-nicole 2017-05-16 01:58

    第一种,你在adapter中给item中的控件设置点击事件,不需要判断了
    第二,给RecycleView的item中的控件根据id进行筛选,根据item中的控件不同的id使用switch对不同的控件设置不同的点击事件

    点赞 打赏 评论
  • 接口的说法 2017-05-16 01:58

    adapter里给相应按钮设置点击事件不行????

    点赞 打赏 评论
  • chickenmay 2017-05-16 02:02
    点赞 打赏 评论
  • Hunter-Lei 2017-05-16 04:22

    用回调写比较好,因为你在adapter里操作不方便,定义一个Interface,用抽象方法

    点赞 打赏 评论

相关推荐