Android——如何监听RecyclerView中每一条Item的点击

Android——如何监听RecyclerView中每一条Item的点击,第1张

本文主要讲述如何为RecyclerView的每一条Item设置不同的点击事件,只对必要 *** 作进行分析 在RecyclerView的Adapter中需要执行的 *** 作:
//创建监听对象
	private ItemOnClickListener mItemOnClickListener;
	
//创建设置监听的方法
    public void setItemOnClickListener(ItemOnClickListener mItemOnClickListener) {
        this.mItemOnClickListener = mItemOnClickListener;
    }
//创建点击事件接口,将view和条目数i作为参数
    public interface ItemOnClickListener {
        public void onClick(View view, int i);
    }
    
    @Override
    public void onBindViewHolder(ViewHolder viewHolder, int i) {
	//通过实例化类的对象,根据条目i获取指定的List中的数据,绑定到viewHolder中
        messageUtils = messageUtilsList.get(i);
        viewHolder.message.setText(messageUtils.getMessage());
		//创建viewHolder的点击监听
		//该监听触发的逻辑就是mItemOnClickListener.onClick(v,i)中的逻辑
		//具体的逻辑实现在继承onClick的类中
        viewHolder.message.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (mItemOnClickListener!=null){
				//调用监听器对象的点击方法
                mItemOnClickListener.onClick(v,i);
            }
            }
        });
    }
在使用到该RecyclerView的类中需要执行的 *** 作:
//创建Adapter对象
	MessageAdapter messageAdapter = new MessageAdapter(messageUtilsList, getContext());
//调用Adapter中设置监听的方法
	messageAdapter.setItemOnClickListener(new MessageAdapter.ItemOnClickListener() {
            @Override
            public void onClick(View view, int i) {
                //i 就是被点击的Item的条目数
                //此处即可根据i来设置不同的Item的点击事件效果
            }
        });

转载请注明出处:https://blog.csdn.net/YJ21712/article/details/123847250

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/992703.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-21
下一篇 2022-05-21

发表评论

登录后才能评论

评论列表(0条)

保存