studio programación programacion herramientas gratis fundamentos curso crear con avanzado aplicaciones android button

programacion - android establecer botón de fondo mediante programación



manual android studio avanzado (4)

Descubrí que Android Studio me advierte que getColor() está en desuso al intentar hacer esto:

Button11.setBackgroundColor(getResources().getColor(R.color.red))

Entonces, encontré que el método a continuación es la solución simple y actualizada:

Button11.setBackgroundColor(ContextCompat.getColor(context, R.color.red))

Desea evitar la codificación rígida en el argumento de color, ya que se considera un estilo de código incorrecto.

Editar: Después de usar setBackgroundColor() con mi propio botón, vi que el relleno del botón interno se expandió. No pude encontrar ninguna forma de cambiarlo a tener el alto y el ancho establecidos en "wrap_content". Tal vez es un error.

Fuente: https://stackoverflow.com/a/32202256/6030520

Me gustaría saber cómo configurar el color del botón programáticamente. He codificado lo siguiente, pero falla:

Button11.setBackgroundColor(R.color.red);

¡¡Gracias!!


Viejo hilo, pero aprendió algo nuevo, espero que esto pueda ayudar a alguien.

Si desea cambiar el color de fondo pero conserva otros estilos, a continuación puede ser útil.

button.getBackground().setColorFilter(ContextCompat.getColor(this, R.color.colorAccent), PorterDuff.Mode.MULTIPLY);


R.color.red es una ID (que también es un int ), pero no es un color.

Use uno de los siguientes en su lugar:

// If you''re in an activity: Button11.setBackgroundColor(getResources().getColor(R.color.red)); // OR, if you''re not: Button11.setBackgroundColor(Button11.getContext().getResources().getColor(R.color.red));

O alternativamente:

Button11.setBackgroundColor(Color.RED); // From android.graphics.Color

O bien, para obtener más habilidades profesionales:

Button11.setBackgroundColor(0xFFFF0000); // 0xAARRGGBB


button.setBackgroundColor(getResources().getColor(R.color.red);

Establece el color de fondo para esta vista. Parámetros: colorear el color del fondo

R.color.red es una referencia generada en la compilación en gen.