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