¿Es posible establecer el color de una cadena directamente en string.xml?

Me refiero a algo como:

<string name="error" color="#9a1d1d">Error!</string> 

Como se sugiere por rekire no es posible establecer el color de la manera que usted está haciendo.

Puede usar el método sugerido por rekire.

En usted xml usted puede especificar el color para su textview como

  android:textColor="#0EFFFF" 

También puede configurar el color de texto

  TextView tv= (TextView)findviewById(R.id.textView1); tv.setTextColor(Color.RED); 

Para establecer el color de determinadas palabras en textview, puede utilizar spannable string

  TextView tv= (TextView)findviewById(R.id.textView1); tv.setText(""); String s="Hello World"; SpannableString ss= new SpannableString(s); ss.setSpan(new ForegroundColorSpan(Color.GREEN), 0, 5, 0); tv.setText(ss); 

Ponga este código en el archivo string.xml :

 <font color="Red"><a href="support@legacystories.org">HERE</a></font> 

Antes de 4.x, usted podría hacer esto:

 <string name="error"><font fgcolor="#ff9a1d1d">Error!</font></string> 

Sin embargo, el error https://code.google.com/p/android/issues/detail?id=58192 rompió esta funcionalidad porque introdujo un analizador de números enteros que no puede manejar números con el conjunto de bits más alto y, desafortunadamente, Omita la parte de opacidad del color (que la mayoría de la gente prefiere establecer en ff como en este ejemplo).

Sólo ayer aprendí un trabajo inteligente. Lo que haces es negar el valor de color hexadecimal en el complemento de dos. ¿Cómo hacer esto depende de su calculadora hexadecimal, pero la forma más fácil es restar su color de 0x100000000. En su caso, que resultaría en 0x100000000 – 0xff9a1d1d = 0x65e2e3. (O simplemente se puede invertir, por ejemplo, 0065e2e2 que sería lo suficientemente cerca). A continuación, negar esto de nuevo con un signo menos:

 <string name="error"><font fgcolor="-#65e2e3">Error!</font></string> 

Y voilla! Usted tiene su color deseado.

Felicitaciones a TWiStErRob por averiguar esto en https://stackoverflow.com/a/11577658/338479

ETA: Acabo de descubrir que esto bloqueará tu aplicación si lo haces en un sistema 2.x; Se produce una excepción NumberFormat

Es posible probar esto ..

String.xml

 <string name="colorText"><![CDATA[ Give your string here. Like, This sentence has a<b><font color=#FF0000>Red color</b> text.]]></string> 

ExampleClass.java

 TextView colorTextView = (TextView)findViewById(R.id.colorText); String customColorText = getResources().getString(R.string.colorText) colorTextView.setText(Html.fromHtml(customColorText)); 

Codificación feliz

No esto no es posible que usted tiene que especificar que en su diseño. Pero puedes poner el color en tu colors.xml.

Colors.xml

 <color name="foo">#abc123</color> 

Your_layout.xml

 <TextView android:textColor="@color/foo" android:text="@string/error" /> 

Prueba éste

 <string name="some_text">Font color is <font fgcolor="#ffff0000">red</font></string> 

Strings.xml

 <string name="pbs_setup_title">Select %1$s <font fgcolor="#FF33B5E5">brand</font> or scan the <font fgcolor="#FFFF0000">Remote</font></string> 

Class.java

 String SelectedDeviceType_Str = "TV" SetupYourDevice_TextView.setText(Html.fromHtml(String.format(Html.toHtml(new SpannedString(getResources().getText(R.string.pbs_setup_title))), SelectedDeviceType_Str))); 
  1. Cree un color en el archivo colors.xml en valores

      <color name ="red">#ff0000</color> 
  2. En tus strings.xml haz algo como

      <string name="some_text">The next word is <font fgcolor="red">red</font> but that is all</string> 

Descubrí que no podía usar el código hexadecimal directamente en strings.xml

En mi experiencia, he almacenado el color en strings.xml parece

<color name="name_color">#ffffff</color>

Cuando tengo una vista y establecer `

NameView.setBackgroundColor (R.color.name_color);

está bien.

Pero cuando fijo el color para el texto parece

Name_TextView.setTextColor (R.color.name_color);

No es efecto .

Si usted consigue el mismo problema, apenas fijado

Name_TextView.setTextColor (Color.parseColor ("código hexa de color que desea"));

Espero que ayude.

En Strings.xml:

 <resources> <color name="etDisabled">#ac8888</color> <color name="myorange">#f56415</color> <color name="mygreen">#95cd08</color> </resources> 

Entonces en el código:

  TextView myText = (TextView) findViewById(R.id.tvJugador1); myText.setTextColor(R.color.mygreen); 
FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.