Cómo determinar qué botón se presionó en Android

Necesito saber cómo reconocer, qué botón presionar. Como si tuviera dos botones, digamos el botón 1 y el botón 2, y ambos ejecutan el mismo método, digamos method (), ¿cómo determinar qué botón presionar?

Saludos

El patrón más elegante a seguir:

public void onClick(View v) { switch(v.getId()) { case R.id.button_a_id: // handle button A click; break; case R.id.button_b_id: // handle button B click; break; default: throw new RuntimeException("Unknow button ID"); } 

De esta manera, es mucho más simple depurarlo y se asegura de que no se pierda el manejo de ningún clic.

Tengo 10 botones que realizan el mismo método updateText() . Utilicé este código para obtener el texto del botón en el que se hizo clic:

 public void updateText(View v){ Button btn = (Button) findViewById(v.getId()); String text = btn.getText().toString(); } 

O … puedes simplemente poner un android: onClick = “foo” en el código xml del botón, y definir un método en java con la firma. Dentro del método foo, obtenga la identificación y compárela con la que necesita

 public void foo(View v){ if (v.getId() == R.id.yourButton){ } else if (v.getId() == R.id.nextButton){ } } 

Si al “realizar el mismo método” te refieres a su OnClickListener, entonces debes hacer referencia al parámetro que se le pasa.

 public void onClick(View v) { if(v==btnA) { doA(); } else if(v==btnB) { doB(); } } 

Ok tengo la solución

 if (yesButton.getId() == ((Button) v).getId()){ // remainingNumber } else if (noButton.getId() == ((Button) v).getId()) { // it was the second button }