欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

详解Android使用Html.fromHtml需要注意的地方

程序员文章站 2023-10-27 18:03:04
项目中我和一个同事都使用了html.fromhtml设置字体的颜色,结果是他设置的没有效果,我的确有效果,然后对比代码不同的地方,终于知道原来使用html时候 ,还需要稍微...

项目中我和一个同事都使用了html.fromhtml设置字体的颜色,结果是他设置的没有效果,我的确有效果,然后对比代码不同的地方,终于知道原来使用html时候 ,还需要稍微注意下。因为是在机缘巧合之下发现的,所以特别记录下,减少错误的发生。

1. 设置字体颜色的时候,颜色值需要用到转义符:如下代码所示:

string textstr = "本月已成功邀请 <font color=\"#ff0000\">" + 100 + "</font>人";

运行效果如下图所示:

详解Android使用Html.fromHtml需要注意的地方

可以看到设置的效果:100的字体设置成红色了

2. 特别特别需要注意的是:不能混合使用。

用法一:看代码和效果图:

string textstr = "本月已成功邀请 <font color=\"#ff0000\">" + 100 + "</font>人";
mtvtest.settext("测试下啊"+html.fromhtml(textstr));

详解Android使用Html.fromHtml需要注意的地方

结果发现没有效果

用法二:

string textstr = "测试啊本月已成功邀请 <font color=\"#ff0000\">" + 100 + "</font>人";
mtvtest.settext(html.fromhtml(textstr));

详解Android使用Html.fromHtml需要注意的地方

这里却有效果了,其原因就在于:mtvtest.settext() 这里面,只能写html.fromhtml(textstr),不能做拼接,一旦拼接了,就没有效果了。

3.补充点:

对字体加粗,设置成红色:

string textstr = "测试啊本月已成功邀请 <strong><font color=\"#ff0000\">" + 100 + "</font><strong>人";
mtvtest.settext(html.fromhtml(textstr));

效果如下:字体变红同时也加粗了。

详解Android使用Html.fromHtml需要注意的地方

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。