Hice un botón que cambia el fondo dibujable en diferentes estados, de esta manera:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true" android:drawable="@drawable/btn_location_pressed" /> <!-- pressed -->
<item android:state_focused="true" android:drawable="@drawable/btn_location_pressed"/> <!-- focused -->
<item android:drawable="@drawable/btn_location"/> <!-- default -->
El problema aquí es que también estoy tratando de cambiar el textColor como lo hago con el dibujable, pero no puedo. Ya probé android: textColor y android: color pero el primero no funciona mientras que el segundo cambia mi fondo.
El siguiente código es parte de mi diseño. En cuanto al color del texto, solo funciona para el color de texto de estado normal, por lo tanto, no lo cambia al blanco mientras se presiona
<Button android:id="@+id/location_name"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingTop="5dp"
android:background="@drawable/location"
android:textSize="15sp"
android:textColor="@color/location_color"
android:textColorHighlight="#FFFFFF"
/>
¿Alguien tiene una pista?
fuente
res/color
carpeta. Y cuando llame, use:android:textColor="@color/button_text_color"
Otra forma de hacerlo es en tu clase:
fuente
ok muy simple primero ve a 1. res-valuse y abre colors.xml 2. copia 1 del texto definido, por ejemplo # FF4081 y cambia el nombre, por ejemplo, cambié a blanco y cambié su valor, por ejemplo, cambié a #FFFFFF para valor blanco como este
luego dentro de su botón agregue esta línea
ok b3 es el nombre de mi botón, así que cambié el nombre de tu botón, todos los demás serán iguales si usas un color blanco si cambias de color diferente, luego cambia el blanco al nombre de tu color, pero primero debes definir ese color en colores. XML como expliqué en Pont 2
fuente
Cambiar el color del texto del botón
Porque este método ahora está en desuso
Yo uso lo siguiente:
fuente
Usar
getColorStateList
asíen vez de
getColor
fuente