首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >fromHtml: JellyBean和KitKat上的不同行为(及以上)

fromHtml: JellyBean和KitKat上的不同行为(及以上)
EN

Stack Overflow用户
提问于 2018-03-14 05:26:37
回答 2查看 161关注 0票数 1

我使用fromHtmlTextView中显示格式化文本(粗体、斜体等)。然而,我发现它在JellyBean (4.1.2)和KitKat(4.4.2)上的行为不同。

这是代码:

代码语言:javascript
复制
    String myHtml = "<b>hello</b>&#128516;";
    Spanned spanned = Html.fromHtml(myHtml, null, null);

这里的html字符串有&#128516;,它是用于表情符号的unicode。现在,在调用fromHtml之后,它在KitKat上返回以下值(以及上面的):

代码语言:javascript
复制
spanned = hello

下面是Android的截图:

这是预期的行为,因为我们可以在spanned中看到相应的表情符号。

但是在JellyBean上,相同的调用返回以下值:

代码语言:javascript
复制
spanned = hello�� 

这是截图:

这确实是意料之外的,把我逼疯了。我不知道我做错了什么。如果有人有主意的话,你能帮忙吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-03-24 14:13:14

令人惊讶的是,这个问题的根源是在Html.toHtml中,我用它将TextView中的文本转换为html。我使用了自定义toHtml,解决了这个问题。我用.toHtml写的答案。的确,这是一个很好的解决办法。我想知道安卓最初的Html.toHtml怎么会如此蹩脚和有缺陷。

票数 0
EN

Stack Overflow用户

发布于 2018-03-14 05:35:34

java文件添加到src中,并在assets dir中添加字体.ttf文件

现在使用如下所示

代码语言:javascript
复制
String myHtml = "<b>hello</b>&#128516;";
Spanned spanned = AndroidEmoji.ensure(myHtml);

有关更多信息,请在这里查看密码。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49270267

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档