我在strings.xml的一个字符串中有一个很长的文本。我想要加粗并更改文本中某些单词的颜色。
我该怎么做呢?
发布于 2011-08-20 16:24:54
您基本上可以在字符串资源中使用html标记,如下所示:
<resource>
<string name="styled_welcome_message">We are <b><i>so</i></b> glad to see you.</string>
</resources>
并使用Html.fromHtml或使用spannable,请检查我发布的链接。
类似的老问题:Is it possible to have multiple styles inside a TextView?
发布于 2017-09-11 19:18:11
在字符串资源中使用html标记:-
<resources>
<string name="string_resource_name"><![CDATA[<b> Your text </b>]]> </string>
</resources>
并从字符串资源中获取粗体文本,如:
private Spanned getSpannedText(String text) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
return Html.fromHtml(text, Html.FROM_HTML_MODE_COMPACT);
} else {
return Html.fromHtml(text);
}
}
String s = format(context.getResources().getString(R.string.string_resource_name));
textView.setText(getSpannedText(s));
发布于 2017-11-22 18:53:56
正如David Olsson所说,您可以在字符串资源中使用HTML:
<resource>
<string name="my_string">A string with <i>actual</i> <b>formatting</b>!</string>
</resources>
然后,如果您使用getText(R.string.my_string)
而不是getString(R.string.my_string)
,您将得到一个包含嵌入格式的CharSequence
而不是String
。
https://stackoverflow.com/questions/7130619
复制相似问题