如何引用字符串资源中的颜色来格式化文本?

时间:2017-06-09 15:14:27

标签: android android-resources

我的strings.xml包含以下字符串资源

<string name="contacts"><font fgcolor="#FF00FFFF">+</font> Contacts</string>

工作正常并将textcolor设置为#FF00FFFF

但如果我尝试引用一种颜色

<string name="contacts"><font fgcolor="@color/strings_font_fgcolor_cyan">+</font> Contacts</string>

工作。

我添加了颜色

<color name="strings_font_fgcolor_cyan">#FF00FFFF</color>

如何从字符串资源中引用此颜色?

1 个答案:

答案 0 :(得分:2)

您无法在字符串中引用颜色资源值。您必须继续使用fgcolor="#FF00FFFF"或在运行时格式化文本。

<string name="contacts"></string>之间的所有内容都被视为您的文字,不再进行处理。

如果要使用资源颜色,则必须在运行时中执行此操作,方法是使用加载的值解析/替换String中的部分,或者手动向其添加正确的标记。