在我的 strings.xml 文件中,我定义了以下内容:
<string name="mystring"><b>Bold text</b>Non-bold text</string>
它应该工作,因为它在这里指定。但实际上只显示粗体文本,而其他部分文本则消失了。
在我的 strings.xml 文件中,我定义了以下内容:
<string name="mystring"><b>Bold text</b>Non-bold text</string>
它应该工作,因为它在这里指定。但实际上只显示粗体文本,而其他部分文本则消失了。
取自这个SO 线程
用这个
textView.setText(Html.fromHtml(someText));
或通过这种方式从 xml
您可以在 strings.xml 中包含原始 HTML,只要将其包装在
<![CDATA[ ...raw html... ]]>
例子:
<string name="nice_html">
<![CDATA[
<p>This is a html-formatted string with <b>bold</b> and <i>italic</i> text</p>
<p>This is another paragraph of the same string.</p>
]]>
</string>
然后,在您的代码中:
TextView foo = (TextView)findViewById(R.id.foo);
foo.setText(Html.fromHtml(getString(R.string.nice_html)));
您还可以在 CDATA 块内使用反斜杠转义撇号/单引号,这样您就可以拥有类似的东西<b>can\'t</b>
而不是无限丑陋的东西<b>can't</b>