私は次のようなことを意味します:
<string name="error" color="#9a1d1d">Error!</string>
rekire が示唆しているように、あなたがやっているように色を設定することはできません。
rekire が提案する方法を使用できます。
あなたのxmlでは、テキストビューの色を次のように指定できます
android:textColor="#0EFFFF"
プログラムでテキストの色を設定することもできます
TextView tv= (TextView)findviewById(R.id.textView1);
tv.setTextColor(Color.RED);
テキストビューで特定の単語の色を設定するには、スパン可能な文字列を使用できます
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);
4.x より前では、次のようにすることができました。
<string name="error"><font fgcolor="#ff9a1d1d">Error!</font></string>
ただし、バグhttps://code.google.com/p/android/issues/detail?id=58192はこの機能を壊しました。これは、最上位ビットが設定された数値を処理できない整数パーサーが導入されたためです。色の不透明度部分を省略します (ほとんどの人は、この例のように ff に設定することを好みます)。
昨日、巧妙な回避策を学びました。あなたがすることは、2 の補数で 16 進数の色の値を否定することです。これを行う方法は、16 進計算機によって異なりますが、最も簡単な方法は、0x100000000 から色を減算することです。あなたの場合、それは 0x100000000 - 0xff9a1d1d = 0x65e2e3 になります。(または、それを逆にすることもできます。たとえば、十分に近い 0065e2e2 です)。次に、マイナス記号を使用してこれを再度否定します。
<string name="error"><font fgcolor="-#65e2e3">Error!</font></string>
そして出来上がり!ご希望の色があります。
https://stackoverflow.com/a/11577658/338479でこれを理解した TWiStErRob への称賛
ETA: 2.x システムでこれを行うとアプリがクラッシュすることがわかりました。NumberFormat 例外をスローします
これを試してみてください
<string name="some_text">Font color is <font fgcolor="#ffff0000">red</font></string>
このコードをstring.xml
ファイルに入れます。
<font color="Red"><a href="support@legacystories.org">HERE</a></font>
Strings.xml
<string name="pbs_setup_title">Select %1$s <font fgcolor="#FF33B5E5">brand</font> or scan the <font fgcolor="#FFFF0000">Remote</font></string>
クラス.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)));
その可能性はこれを試してみてください..
文字列.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));
いいえ、レイアウトで指定する必要はありません。ただし、colors.xml に色を入れることはできます。
色.xml
<color name="foo">#abc123</color>
your_layout.xml
<TextView android:textColor="@color/foo" android:text="@string/error" />
値でcolors.xmlファイルに色を作成します
<color name ="red">#ff0000</color>
あなたのstrings.xmlで次のようにします
<string name="some_text">The next word is <font fgcolor="red">red</font> but that is all</string>
string.xml で 16 進コードを直接使用できないことがわかりました。
私の経験では、strings.xmlに色を次のように保存しました
<color name="name_color">#ffffff</color>
ビューとセットがある場合 `
nameView.setBackgroundColor(R.color.name_color);
大丈夫です。
しかし、テキストの色を次のように設定すると
name_TextView.setTextColor(R.color.name_color);
それはEffectではありません。
同じ問題が発生した場合は、設定するだけです
name_TextView.setTextColor(Color.parseColor("希望する色のコードヘキサ"));
それが役立つことを願っています。
Strings.xml で:
<resources>
<color name="etDisabled">#ac8888</color>
<color name="myorange">#f56415</color>
<color name="mygreen">#95cd08</color>
</resources>
次に、コードで:
TextView myText = (TextView) findViewById(R.id.tvJugador1);
myText.setTextColor(R.color.mygreen);