为RecyclerView的item创建点击事件

RecyclerView虽然很好用,但是竟然没有item的点击事件,所以我们需要自己实现,所以可以在ViewAdapter中添加点击的事件。


在我们创建的继承于RecyclerView.Adapter类中添加接口:

添加一个onItemClick方法,参数为view和position,看起来更友好,也可以根据需要自定义。

public interface OnItemClickListener {
        void onItemClick(View view, int position);
}

然后新建一个接口对象和一个设置方法:

private OnItemClickListener mOnItemClickListener;
public void setOnItemClickListener(OnItemClickListener mOnItemClickListener){
        this.mOnItemClickListener = mOnItemClickListener;
}

然后我们在onBindViewHolder方法中添加点击事件:

<span style="white-space:pre">	</span>public void onBindViewHolder(final MyMusicRecyclerViewViewHolder holder, final int position) {
        holder.bindItem(mRecyclerViewItems.get(position));
        //添加点击事件
        if(mOnItemClickListener != null) {
            holder.itemView.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    mOnItemClickListener.onItemClick(holder.itemView, position);
                }
            });
        }
    }
以上代码都是在Adapter中添加。


然后我们就可以通过Adapter来实现事件的响应:

<span style="white-space:pre">	</span>mRecyclerViewAdapter.setOnItemClickListener(new MyMusicRecyclerViewAdapter.OnItemClickListener() {
            @Override
            public void onItemClick(View view, int position) {
                
            }
       });


但是这样的实现看起来可能不美观,所以可以根据需求来添加响应的效果。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值