Unfortunately it is not part of the RecyclerView. To overcome it I define an interface:
public interface OnItemClickListener {
public void onItemClick(View view, int position);
}
The ViewHolder implements the View.OnClickListener, and its constructor takes an object that implements my OnItemClickListener interface:
public static class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
private OnItemClickListener mListener;
public ViewHolder(View itemView) {
super(itemView);
itemView.setOnClickListener(this);
}
public ViewHolder(View itemView, OnItemClickListener listener) {
this(itemView);
mListener = listener;
}
@Override
public void onClick(View v) {
if (mListener != null) {
mListener.onItemClick(v, getPosition());
}
}
When you click on the row, I forward trough the listener the view clicked and its position
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…