在循环中使用 Html.fromHtml 设置 textview 的文本?



可以使用html.fromhtml到字符串fetchdata,以更改某些文本样式吗?该文本分配给循环外的文本视图。这是相关的代码:

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 + "nn";
            c.moveToNext();
        }
getData.setText(fetchData)

现在我正在使用strings.xml,其中我设置了这样的文本:

<b>Word: </b>

但样式被忽略了。我发现了一些相关的问题,我也尝试在不使用strings.xml的情况下做到这一点,但是唯一认识到的标签是
,所有其他标签都被忽略了。我认为问题是我在循环中使用混合变量和硬编码文本,因为我像这样在循环外测试了它:

getData.setText(Html.fromHtml("<b>This<b/> is <u>underlined<u/> text") 

它正在工作。

像这样声明您的字符串

<string name="wordLabel"><![CDATA[<b>Word: </b>]]></string>

在Documentaion中,您也可以将其写为

<string name="word_label">&lt;b>Word: &lt;/b></string> // here I have chnaged your string name wordLabel to word_label. you should follow naming convension.

请注意,使用&lt;符号。

最新更新