当前位置: 首页 > 工具软件 > QIJI Font > 使用案例 >

android fromhtml不起作用,textview-Android Html.fromHtml(String)不适用于<font color ='#'> text </ font>...

杨君之
2023-12-01

textview-Android Html.fromHtml(String)不适用于 text font>

我试图使用html标签将不同颜色的行添加到TextView中。

无论出于什么原因

Html.fromHtml("text");

不会在TextView中显示为彩色。

Chris asked 2020-07-25T19:54:34Z

11个解决方案

53 votes

Html.fromHtml("text");

而不是上面,请使用以下

Html.fromHtml("text]]>");

这对我有用,我相信它也对您有用。

如有任何问题,请通知我。

Bipin Vayalu answered 2020-07-25T19:54:56Z

23 votes

我的答案涉及对您的代码的猜测,但是这里是:

当您使用字体标签时:不要包含Alpha通道,以使您的十六进制字符串看起来像“#ff123456”。 如果使用Integer.toHexString(),则在该结果中将具有一个alpha通道。

当我在资源中的十六进制字符串上使用substring(2)时,它起作用了。

总结一下:

text.setText(Html.fromHtml("text"));

可以,但是:

text.setText(Html.fromHtml("text"));

惯于!

Andreas Rudolph answered 2020-07-25T19:55:38Z

21 votes

确保关闭所有修饰符,例如:

android:textAllCaps="true"

Semko Toruj answered 2020-07-25T19:55:58Z

5 votes

fromHtml方法在支持的HTML标记方面受到极大限制,并且字体不是其中之一。 非正式列表请参见[http://commonsware.com/blog/Android/2010/05/26/html-tags-supported-by-textview.html]。 我本人对此进行了一些研究,发现fromHtml基于一个晦涩且记录不佳的渲染引擎。

Philip Sheard answered 2020-07-25T19:56:18Z

4 votes

我用这个代码

Html.fromHtml(convertToHtml("text"));

public String convertToHtml(String htmlString) {

StringBuilder stringBuilder = new StringBuilder();

stringBuilder.append("

stringBuilder.append(htmlString);

stringBuilder.append("]]>");

return stringBuilder.toString();

}

Cabezas answered 2020-07-25T19:56:38Z

2 votes

看起来像很暗的颜色,您确定屏幕能够显示这种颜色,以便将它们与黑色区分开吗? 该代码段看起来不错,我已经尝试过多次类似的代码,并且它就像一个魅力。 尝试使用更亮的颜色,例如#ff0000(红色),以验证其是否有效:

TextView text = ... // find or instantinate your text view.

text.setText(Html.fromHtml("text"));

Konstantin Burov answered 2020-07-25T19:56:58Z

2 votes

textView.setText(Html.fromHtml("text"));

Devendra Anurag answered 2020-07-25T19:57:13Z

1 votes

确保您的RGB值是大写的。 Android可以理解#00FF00,但不能理解#00ff00。

Lenny T answered 2020-07-25T19:57:33Z

1 votes

试试这个,它应该工作

textView.setText(Html.fromHtml("text"));

Houcine answered 2020-07-25T19:57:53Z

1 votes

是的,我同意,有时候它不起作用。

或者,我在xml中使用Textview:

android:textColorLink="yourColor"

奇迹般有效 ;)

abhishekm473 answered 2020-07-25T19:58:21Z

0 votes

txt_description1.setText(Html.fromHtml(""+str_description1+""));

如果您不想使用单一的静态颜色,并且希望直接从编辑器中反映出来,则可以使用“ rgb”。 它会反映您在编辑器中设置的确切颜色,只需在textview和concat608中用textview值进行设置即可。你们都准备好了。

Naina answered 2020-07-25T19:58:42Z

 类似资料: