Adam Varhegyi Adam Varhegyi - 4 months ago 24
Android Question

How to pass parameters to OnClickListener?

How can i pass parameter to an OnClickListener() ?

Got my Listener:

OnClickListener myListener = new OnClickListener()
{

@Override
public void onClick(View v)
{
//I want to reach params here

}

};


I got 12 buttons and i dont want to write 12 listeners for them, it would be great to just pass a string to them and they can do completly different things.

Answer

Use your own custom OnClickListener

public class MyLovelyOnClickListener implements OnClickListener
   {

     int myLovelyVariable;
     public MyLovelyOnClickListener(int myLovelyVariable) {
          this.myLovelyVariable = myLovelyVariable;
     }

     @Override
     public void onClick(View v)
     {
         //read your lovely variable
     }

  };