tipos studio redondo personalizar paleta imagen estilos elementos con componentes color botones boton amontonados android

android - studio - configurando textColor en TextView en layout/main.xml el archivo de diseño principal no hace referencia al archivo colors.xml.(Quiere un#RRGGBB en lugar de @ color/text_color)



personalizar botones android studio (4)

Estoy tratando de establecer algunos colores generales para un programa que estoy escribiendo. Creé un archivo colors.xml y trato de hacer referencia directamente a los colores del archivo layout.xml. Creo que estoy haciendo esto correctamente, pero me está dando el siguiente error:

Color value ''@colors/text_color'' must start with #

Aquí está mi res / values ​​/ colors.xml

<?xml version="1.0" encoding="utf-8"?> <resources> <color name="background_color">#888888</color> <color name="text_color">#00FFFF</color> </resources>

Aquí está mi res / layout / main.xml

<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical"> <TextView android:layout_width="fill_parent" android:text="@string/hello" android:layout_height="wrap_content" android:id="@+id/TextView01" android:textColor="@colors/text_color"/> </LinearLayout>

Miré algunas referencias en el sitio de desarrolladores de Android: Más tipos de recursos: color y encontré este código:

Ejemplo: archivo XML guardado en res / values ​​/ colors.xml:

<?xml version="1.0" encoding="utf-8"?> <resources> <color name="opaque_red">#f00</color> <color name="translucent_red">#80ff0000</color> </resources>

Este código de aplicación recupera el recurso de color:

Resources res = getResources(); int color = res.getColor(R.color.opaque_red);

Este diseño XML aplica el color a un atributo:

<TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:textColor="@color/translucent_red" android:text="Hello"/>

Creo que mis dos archivos XML siguen este ejemplo bastante cerca, sin embargo, la única diferencia es que no he usado ningún código de aplicación para recuperar el recurso de color. No creo que esto sea necesario (pero es una diferencia). ¿Pensé que vería si alguien más tuviera problemas similares o una solución? o esto es un error?

Actualicé todos mis archivos sdk (y el plugin de Eclipse) de Android la semana pasada, así que creo que son los últimos.


Debes escribir textcolor en xml como

android:textColor="@color/text_color"

o

android:textColor="#FFFFFF"


Después de experimentar en ese caso: android:textColor="@colors/text_color" está mal ya que @color no depende del nombre del archivo. Puede asignar un nombre al archivo de recursos foobar.xml, no importa, pero si ha definido algunos colores, puede acceder a ellos utilizando @color/some_color .

Actualizar:

Ubicación del archivo: res / values ​​/ colors.xml El nombre del archivo es arbitrario. El nombre del elemento se utilizará como el ID de recurso. ( Source )


Tienes un error tipográfico en tu xml; debería ser:

android:textColor="@color/text_color"

eso es "@color" sin los ''s''.


Una variación usando solo un código de color estándar:

android:textColor="#ff0000"