Android的strings.xml不在代码显示转html原生就支持的部分html语法

官方 Supported HTML elements include: 给出了 b,i,u,但是实际上支持的还有。

根据
StringBlock.java ( frameworks\base\core\java\android\content\res)
的 get 方法源码可知,有以下类型可以支持。

"b");
"i");
"u");
"tt"); // 参见html,标签内的文字等宽字体, 比如 abliab 中间的 li 会窄,用这个后就一样宽了
"big");
"small");
"sup"); //上下标
"sub");
"strike"); //删除线
"li"); //用在首位,多个列表的圆点符号
"marquee"); //没有具体测试

由其applyStyles 方法可知还支持
font (和html标准的有些出入了,属性有 fgcolor 、bgcolor、height、size)
a
标签。其中font的颜色既fgcolor属性要以Android的颜色格式指定,比如 #FF00FF00 ,要带上前面的透明度,不然透明度默认是0,既类似 #00FF0000 这样,会把字弄没。

还有一个 annotation 标签,没深入研究,官方的注释是
/**
* Annotations are simple key-value pairs that are preserved across
* TextView save/restore cycles and can be used to keep application-specific
* data that needs to be maintained for regions of text.
*/
特殊情况的键值对保存,没仔细研究过,暂时还没碰到过

可能不同版本的支持略有差异吧,没有对比几个主流版本。

你可能感兴趣的:(android)