studio item icon color change android css colors background drawable

item - Android cómo cambiar el color del botón por el texto



menu item color android (3)

Tienes que hacer esto, solo escribe debajo de setText ()

es decir

button.setText("YES"); setBackgroundResource(R.color.green);

y cuando

button.setText("NO"); setBackgroundResource(R.color.red);

Simplemente deseo cambiar el color de fondo del botón por el valor del texto. Por ejemplo, cuando cambio el texto a:

button.setText("YES");

Quiero establecer el color de fondo del botón en verde . y cuando cambio el texto a:

button.setText("NO");

Quiero establecer el color de fondo del botón en rojo .

Cuando lo cambio en el código de Java de esta manera:

boolean textValueYES = true; button.setBackgroundColor(textValueYES ? Color.GREEN : Color.RED);

El botón pierde su configuración drawable.xml. ¿Hay alguna manera de agregar esta verificación al xml dibujable? ¿O para establecer el color de fondo por su valor de texto sin perder las configuraciones dibujables?


me gusta esto en mi archivo java

final Button btn_showtouch = (Button)findViewById(R.id.button); btn_showtouch.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if((btn_showtouch.getText()).equals("YES")) { btn_showtouch.setBackgroundColor(Color.GREEN); btn_showtouch.setText("NO"); }else if(btn_showtouch.getText().equals("NO")) { btn_showtouch.setBackgroundColor(Color.CYAN); btn_showtouch.setText("YES"); } } }); }

y su archivo XML como este

<Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="YES" android:id="@+id/button" android:layout_below="@+id/textView" android:layout_alignParentLeft="true" android:layout_alignParentStart="true" android:layout_marginTop="62dp" />

y funcionó para mí, espero que esto te ayude


puede crear dos xml dibujables para el color de fondo rojo y verde y establecer ese xml mediante programación.

button.setBackgroundResource(textValueYES ? R.drawable.green : R.drawable.red);