<p> <h4> 文本视图中的文本颜色和 HTML 标记有问题



我需要在TextView中使用html代码插入黑色文本。以下是我所做的。

String html="<font color='#000000'> <p><i>bla bla bla</i></p> <h4>bla bla bla</h4> </font>";
textView.setText(Html.fromHtml(html));

结果是正确的,除了文本颜色是灰色而不是黑色。我已经注意到,如果我删除<p>标签和<h4>标签,颜色就会变成黑色,但当然,总体结果不是我想要的。

那么,我该如何保持方面并使文本颜色为黑色呢?

<font> tag should be used inside `<p>` tag and as well as inside `<h4>` tag

因此您将不得不使用两个不同的<font>标签!

试试下面的代码,它肯定会工作,因为我已经测试过了!

使用

String html=" <p><i><font color='#000000'>bla bla bla</font></i></p> <h4><font color='#000000'>bla bla bla</font></h4>";

String html=" <p><font color='#000000'><i>bla bla bla</i></font></p> <h4><font color='#000000'>bla bla bla</font></h4>";

而不是String html="<font color='#000000'> <p><i>bla bla bla</i></p> <h4>bla bla bla</h4> </font>";

您应该知道,Html.fromHtml()只支持Html的一小部分,远远低于WebView。特别是,您不能使用CSS样式表。如果您的输出通过Html.fromHtml()进入TextView,那么您唯一的格式化选项就是在旧的HTML3/4标记中添加字体颜色等。Commonsware在这里有一个有用的列表:Html.fromHtml()标记

以下代码对我有效,希望也对你有效:

Html.fromHtml("<![CDATA[<font color='#145A14'>text</font>]]>");

在你的例子中这样写:

String html="<![CDATA[<font color='#000000'> <p><i>bla bla bla</i></p> <h4>bla bla bla</h4> </font>]]";
textView.setText(Html.fromHtml(html));

我对WebView没有经验,但font标记不是最先进的,与bi一样,可能会在下一个块标记p处结束。

<div style='color: #000000'> <p><i>bla bla bla</i></p> <h4>bla bla bla</h4></div>

最新更新