我使用fromHtml在TextView中显示格式化文本(粗体、斜体等)。然而,我发现它在JellyBean (4.1.2)和KitKat(4.4.2)上的行为不同。
这是代码:
String myHtml = "<b>hello</b>😄";
Spanned spanned = Html.fromHtml(myHtml, null, null);这里的html字符串有😄,它是用于表情符号的unicode。现在,在调用fromHtml之后,它在KitKat上返回以下值(以及上面的):
spanned = hello下面是Android的截图:

这是预期的行为,因为我们可以在spanned中看到相应的表情符号。
但是在JellyBean上,相同的调用返回以下值:
spanned = hello�� 这是截图:

这确实是意料之外的,把我逼疯了。我不知道我做错了什么。如果有人有主意的话,你能帮忙吗?
发布于 2018-03-24 14:13:14
令人惊讶的是,这个问题的根源是在Html.toHtml中,我用它将TextView中的文本转换为html。我使用了自定义toHtml,解决了这个问题。我用.toHtml写的这答案。的确,这是一个很好的解决办法。我想知道安卓最初的Html.toHtml怎么会如此蹩脚和有缺陷。
https://stackoverflow.com/questions/49270267
复制相似问题