RecyclerView的事件监听

RecyclerView没有默认的事件监听,需要我们自己来实现。

方法是在Adapte的ViewHolder构造方法里添加点击事件,有一个方法getAdapterPosition(),用来定位.

<pre style="background-color:#ffffff;color:#000000;font-family:'Consolas';font-size:13.5pt;"><pre name="code" class="java"><span style="font-size:14px;">
         </span><pre name="code" class="java"><span style="font-size:14px;">class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener{

         private LinearLayout content;
         public ViewHolder(View itemView) {
             super(itemView);
             content= (LinearLayout) itemView
                     .findViewById(R.id.id_content_);
             content.setOnClickListener(new View.OnClickListener() {
                                   @Override
                                   public void onClick(View v) {
                                      Snackbar.make(v,getAdapterPosition(),Snackbar.LENGTH_SHORT).show();
                                    }
                                  });</span>
}

如果想要在Activity中去处理点击事件,则比较麻烦:

1.自己创建点击事件处理接口

2.使Activity实现该接口

3.在Adapter中添加自定义接口的属性。

4.在Activity中设置adapter的属性。

5.让Adapter的ViewHolder实现事件监听接口View.OnClickListener,在ViewHolder的onClick方法中调用Activity的事件处理方法

 
 
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值