我有一个带有多个项目的RecyclerView。每个项目都有多个按钮来执行某些操作。
因此,我已经将ReviewerViewAdapter实现了View.OnClickListener。
但是似乎我只能在onCreateViewHolder函数中设置一个OnClickListener。
有谁知道在RecyclerView的每个项目中都具有多个按钮的解决方案吗?
最佳答案
您可以实现OnClickListener,而在onClick函数中可以实现每个操作。像这样。
static class MyViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
Button button1;
Button button2;
Button button3;
Button button4;
public MyViewHolder(View itemView) {
super(itemView);
button1 = (Button) itemView.findViewById(R.id.button1);
button2 = (Button) itemView.findViewById(R.id.button2);
button3 = (Button) itemView.findViewById(R.id.button3);
button4 = (Button) itemView.findViewById(R.id.button4);
button1.setOnClickListener(this);
button2.setOnClickListener(this);
button3.setOnClickListener(this);
button4.setOnClickListener(this);
}
@Override
public void onClick(View view) {
if (view == button1) {
// button1 action
} else if (view == button2) {
// button2 action
} else if (view == button3) {
// button3 action
} else if (view == button4) {
// button4 action
}
}
}
关于android - RecyclerView中有多个onClickListener,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32014323/