MikkoP MikkoP - 1 year ago 141
Android Question

OnClickListener for CardView?

How do I attach an

to a
? I want every single card to have a different action when clicked.

I have a
that has a custom adapter for displaying the cards. This is how it's implemented.

Answer Source

You should implement the OnItemClickListener in your ViewHolder class, and pass the current item to the viewholder instances on every onBindViewHolder().

From this post:

public static class ViewHolder extends RecyclerView.ViewHolder {
    public View view;
    public Item currentItem;

    public ViewHolder(View v) {
        view = v;
        view.setOnClickListener(new View.OnClickListener() {
            @Override public void onClick(View v) {
                // item clicked

@Override public void onBindViewHolder(ViewHolder viewHolder, int i) {
    viewHolder.currentItem = items.get(i);
Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download