Hola usuario de nuestra página web, hemos encontrado la solución a lo que buscas, has scroll y la verás a continuación.
Solución:
use este selector y colóquelo en una carpeta dibujable y establezca el fondo del botón en este selector.
O
Puede usar Color en lugar de Fondo. Espero eso ayude.
Crear una forma llamada button_pressed.xml
Supongamos que tiene dos botones cuyos ID son R.id.btn
y R.id.btn1
Escribe el onClick()
método que le permitirá retener el color cambiado hasta que se presione otro botón.
Button button;
public void onClick(View v)
Drawable dr = getResources().getDrawable(R.drawable.button_pressed);
dr.setColorFilter(Color.parseColor("#FF0000"), PorterDuff.Mode.SRC_ATOP);
switch (v.getId())
case R.id.btn:
if (button == null)
button = (Button) findViewById(v.getId());
else
button.setBackgroundResource(R.drawable.button_pressed);
button = (Button) findViewById(v.getId());
button.setBackgroundDrawable(dr);
break;
case R.id.btn2:
if (button == null)
button = (Button) findViewById(v.getId());
else
button.setBackgroundResource(R.drawable.button_pressed);
button = (Button) findViewById(v.getId());
button.setBackgroundDrawable(dr);
break;
default:
break;
Creo que ahora obtendrás lo que querías hacer.
Te sugiero este selector.
Simplemente cree un archivo selector.xml simple en una carpeta dibujable y luego agregue el selector a su botón como android:background="@drawable/selector"
o por código como este: yourButton.setBackground(getResources().getDrawable(R.drawable.selector));
selector.xml
:
El primer elemento es para pressed
el segundo por focused
y el ultimo es para selected
estado.
Agradecemos que desees añadir valor a nuestra información añadiendo tu veteranía en los informes.