titulo studio icono color cambiar barra bar agregar android android-button android-selector

studio - agregar icono action bar android



Botón personalizado de Android; cambiando el color del texto (4)

Cree un color con estado para su botón, como lo hizo con el fondo, por ejemplo:

<selector xmlns:android="http://schemas.android.com/apk/res/android"> <!-- Focused and not pressed --> <item android:state_focused="true" android:state_pressed="false" android:color="#ffffff" /> <!-- Focused and pressed --> <item android:state_focused="true" android:state_pressed="true" android:color="#000000" /> <!-- Unfocused and pressed --> <item android:state_focused="false" android:state_pressed="true" android:color="#000000" /> <!-- Default color --> <item android:color="#ffffff" /> </selector>

Coloque el xml en un archivo en la carpeta res / drawable, es decir, res / drawable / button_text_color.xml. Luego simplemente establece el dibujo como color de texto:

android:textColor="@drawable/button_text_color"

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 color de texto como lo hago con el dibujo, pero no puedo. Ya probé con android: textColor y android: color, pero el primero no funciona mientras que los segundos cambian mi fondo.

El siguiente código es parte de mi diseño. Con respecto al color del texto, solo funciona con el color del texto de estado normal, por lo que 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?


Otra forma de hacerlo es en tu clase:

import android.graphics.Color; // add to top of class Button btn = (Button)findViewById(R.id.btn); // set button text colour to be blue btn.setTextColor(Color.parseColor("blue")); // set button text colour to be red btn.setTextColor(Color.parseColor("#FF0000")); // set button text color to be a color from your resources (could be strings.xml) btn.setTextColor(getResources().getColor(R.color.yourColor)); // set button background colour to be green btn.setBackgroundColor(Color.GREEN);


ok, muy simple primero vaya a 1. res-valuse y abra colors.xml 2.copie 1 del texto definido, por ejemplo, # FF4081 y cambie el nombre por ejemplo, cambié a blanco y cambie su valor por ejemplo, cambié a #FFFFFF por valor blanco como este

<color name="White">#FFFFFF</color>

Luego dentro de tu botón agrega esta línea

b3.setTextColor(ContextCompat.getColor(getApplicationContext(), R.color.White));

ok b3 es el nombre de mi botón, así que cambiado el nombre de tu botón todos los demás serán iguales si usas el color blanco si cambias de color diferente, luego cambias el color blanco al nombre de tu color, pero primero debes definir ese color en colores. xml como expliqué en pont 2


Cambio del color del texto del botón

Debido a que este método ahora está en desuso

button.setTextColor(getResources().getColor(R.color.your_color));

Yo uso lo siguiente:

button.setTextColor(ContextCompat.getColor(mContext, R.color.your_color));