Heim > Fragen und Antworten > Hauptteil
如题所述,最好不要每次都new一个listener
黄舟2017-04-18 09:20:52
在ViewHolder中获取到部件再设置监听
class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener{
public TestHolder(View view){
super(view);
view.setOnClickListener(this);
View button = view.findViewById(R.id.recycler_item_button);
button.setOnClickListener(this);
}
@Override
public void onClick(View v) {
if(v.getId() == R.id.recycler_item_button){
Toast.makeText(context,"button"+getAdapterPosition(),Toast.LENGTH_SHORT).show();
}else{
Toast.makeText(context,"item"+getAdapterPosition(),Toast.LENGTH_SHORT).show();
}
}
}
阿神2017-04-18 09:20:52
在adapter的onbindviewholder中给item的view的layout设置一个onclicklistener,给那个Button设置一个listener