我希望在recyclerview上获得单个项目的所有价值,并将其传递给对话框。单击该单个项目时会出现一个对话框。
答案 0 :(得分:0)
创建自己的回调。例如:
public interface OnItemClicked {
onItemClicked(Item item);
}
您的活动或片段可以实现该界面。在实现中,您可以显示一个对话框。
接下来,您需要提供一个对象的引用,该对象首先将该接口实现到适配器(可以通过构造函数),然后提供给viewHolder(可以通过bindingView()
方法中的方法)
然后,当您传递对viewHolder的引用时。 您可以在视图中注册视图以侦听onClickEvent。您的ViewHolder将实现OnClickListener。
示例:
public static class MyViewHolder extends ViewHolder implements OnClickListener{
OnItemClicked listener;
Item item;
public void methodWhereYouCreateView(){
view.setOnClickListener(this);
}
public void onClick(View view){
listener.onItemClicked(item);
}
}
答案 1 :(得分:0)
我终于用setTag()和getTag()解决了这个问题。谢谢你的回答。