Android TextView Html.fromHtml 和使用SpannableString哪一个效率更高

我看了下代码,好像系统使用Html.fromHtml也是在底层通过SpannableStringBuilder来实现的,那么从理论上来说,使用SpannableString应该比使用Html.fromHtml的效率高一些。首先我想确认一下,是这样的么?

另外,使TextView有不同的显示效果(像SpannableString那样),还有没有其他的方法?如果有的话,效率又如何?

阅读 6.7k
3 个回答

你想要的"效率"是什么? 总的parse时间短? 到显示首屏内容为止的时间短 (这个HTML.fromHTML比较不行) ? 还是其他?


使TextView有不同的显示效果(像SpannableString那样),还有没有其他的方法?

"有", 总归可以重写一套能表达类似语义的string, 配上自己的TextView.

但是考虑到在手机上能同时显示的文字相当有限, 我觉得Spannable (这系列已经相当精练了) 不太会成为瓶颈.

如果html内容很多且复杂考虑使用WebView,不过还是得开实际的需求。效率方面我觉得两者应该差距不大。

新手上路,请多包涵

Html.fromHtml 适合做一些简单的样式设置,如字体大小,字体颜色。
但如果涉及到文本的部分可点击,部分字体不同。那就要用到SpannableString了。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题