首页 > 解决方案 > 按钮点击使用 RecyclerView Adapter 位置

问题描述

我创建了一个 RecyclerView 适配器,如下所示:

在此处输入图像描述

我已经添加到适配器onClick中,当单击每一行时它会起作用。

holder.itemView.setOnClickListener( new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        Toast.makeText(mView.getContext(), "person + " + position, Toast.LENGTH_LONG).show();
    }
} );

但是,我真正需要的唯一按钮是"chat" Imagebutton. 我只有当用户点击聊天按钮时才会知道点击了适配器的哪一行并基于它创建活动。

当我实际单击按钮时,有没有办法实现适配器 onClick 调用?或者更具体地说,有没有办法可以传递到chatButton.onClick它所在行的位置?

因为我不希望整行都可以点击,只有聊天按钮。

谢谢

标签: androidandroid-recyclerviewandroid-adapter

解决方案


像这样使用:

holder.itemView.chatView.setOnClickListener( new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        Toast.makeText(mView.getContext(), "person + " + position, Toast.LENGTH_LONG).show();
    }
} );

推荐阅读