是否可以使用Html.fromHtml到String fetchData,来改变一些文本样式?此文本分配给循环外的textView。 以下是相关代码:
if( c != null && c.moveToFirst() ){
while (c.isAfterLast()==false) {
String gtWord = c.getString(1);
String gtDef = c.getString(2);
fetchData = fetchData + getResources().getString(R.string.wordLabel) + gtWord + "\n"
+ getResources().getString(R.string.transLabel) + gtDef + "\n\n";
c.moveToNext();
}
getData.setText(fetchData)
现在我正在使用strings.xml,我在其中设置了这样的文字:
<b>Word: </b>
但是样式被忽略了。我发现了一些相关的问题,我也尝试过这样做而不使用strings.xml,但唯一识别的标签是
,所有其他标签都被忽略了。我想问题是我在循环中使用混合变量和硬编码文本,因为我在循环之外测试了它,如下所示:
getData.setText(Html.fromHtml("<b>This<b/> is <u>underlined<u/> text")
它正在工作。
答案 0 :(得分:1)
声明你的字符串
<string name="wordLabel"><![CDATA[<b>Word: </b>]]></string>
从documentaion您也可以将其写为
<string name="word_label"><b>Word: </b></string> // here I have chnaged your string name wordLabel to word_label. you should follow naming convension.
请注意,使用<
表示法对左括号进行HTML转义。