Java Android:格式化字符串并添加粗体样式
我的资源中有一个字符串:Java Android:格式化字符串并添加粗体样式,java,android,string,format,Java,Android,String,Format,我的资源中有一个字符串: <string name="region"><b>Region:</b> %1$s</string> 问题是字符串“region”不是粗体 以下是如何在xml中做到这一点: <string name="region"><![CDATA[<b>Region:</b> %1$s]]></string> 发件人: 有时,您可能希望创建一个样式化的文本资源,该资源也用
<string name="region"><b>Region:</b> %1$s</string>
问题是字符串“region”不是粗体 以下是如何在xml中做到这一点:
<string name="region"><![CDATA[<b>Region:</b> %1$s]]></string>
发件人:
有时,您可能希望创建一个样式化的文本资源,该资源也用作格式字符串。通常,这不会起作用,因为String.format(String,Object…)
方法将从字符串中删除所有样式信息。解决此问题的方法是使用转义实体编写HTML标记,然后在格式化完成后,使用从HTML(字符串)
恢复这些标记
在任何xml资源文件中插入HTML标记时,都需要对其进行HTML转义
<string name="region"><b>Region:</b> %1$s</string>
b>地区:/b>%1$s
您可以在HTML.fromHtml()方法中直接使用HTML文本。。这样试试
tvRegion.setText(Html.fromHtml("<b>" + yourtext+ "</b>" + "Other text.."));
tvRegion.setText(Html.fromHtml(“+yourtext+”+“+Other text..”);
使用此选项,您可以使用HTML标记设置字符串的样式。。您可以检查返回的字符串是否正确吗?可能b
被转义了?
<string name="region"><b>Region:</b> %1$s</string>
tvRegion.setText(Html.fromHtml("<b>" + yourtext+ "</b>" + "Other text.."));