小编Abo*_*ade的帖子

Android Html.fromHtml()在嵌套文本样式上无法正常工作

我想显示HTML

"<html><body><font color=\"black\">
In the name of <font color=\"blue\"><b> God</b></font>
the compassionate, the merciful</font></body><html>"
Run Code Online (Sandbox Code Playgroud)

在TextView中.所以我使用过Html.fromHtml(),但与浏览器相比输出有所不同.

不同之处在于TextView中的"God"一词并未显示为蓝色.

码:

textView.setText("<html><body><font color=\"black\">
  In the name of <font color=\"blue\"><b> God</b></font>
  the compassionate, the merciful</font></body><html>");
Run Code Online (Sandbox Code Playgroud)

html android

6
推荐指数
1
解决办法
1528
查看次数

如何反转 SpannableString 中跨度的优先级

添加到 spannable 的 span 的优先级会影响它在 TextView 中的外观。当我们向 spannable 添加两个嵌套的字符样式时,如下所示

SpannableStringBuilder sp = new SpannableStringBuilder();
String blue = "blue";
String red = "red";
sp.append(blue);
sp.append(red);
sp.append(blue);
sp.setSpan(new ForegroundColorSpan(Color.RED), blue, 2*blue, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);        
sp.setSpan(new ForegroundColorSpan(Color.BLUE), 0, sp.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
((TextView)findViewById(R.id.text_view)).setText(sp);
Run Code Online (Sandbox Code Playgroud)

添加字符样式的顺序对于文本的外观很重要。Android 通过 Spanned.SPAN_PRIORITY 标志提供了一种处理 span 优先级的方法。但是当我们使用 Html.fromHtml() 时,优先级并不在我们手中。那么我可以更改 Html.fromHtmel 输出的跨度优先级吗,或者我可以从中创建新的跨度并创建新的跨度优先级吗?

html android

6
推荐指数
1
解决办法
1520
查看次数

标签 统计

android ×2

html ×2