Android的TextView类可以通过HTML.fromHtml()显示格式化文本,如下所示:HTML tags in string for TextView
TextView类只能处理一小部分HTML,但我不知道支持哪些标记和属性,哪些不支持。这里给出的摘要:http://commonsware.com/blog/Android/2010/05/26/html-tags-supported-by-textview.html似乎不正确。例如。 < div align =“...”>使用Android 2.2不适用于我
答案 0 :(得分:25)
我注意到这篇文章:
列出< div>由Html.fromHtml()支持,但它不显示对“align”属性的支持。
(该页面上的标签显示了其他支持的属性。)
作者说他通过查看Android的git存储库中的代码来构建引用。
编辑: 随着时间的推移,支持的标签列表似乎已更改。请参阅后面的帖子,例如:http://www.grokkingandroid.com/android-quick-tip-formatting-text-with-html-fromhtml/。
根据这两篇文章,我建议检查源代码似乎是获取最新信息的最可靠方法。
答案 1 :(得分:22)
为所有搜索它的人查找。
日期:2017年7月
来源:https://android.googlesource.com/platform/frameworks/base/+/master/core/java/android/text/Html.java
Html.fromHtml支持:
答案 2 :(得分:7)
对strings.xml文件中的字符串使用CData部分以获取html内容到TextView的实际显示的最佳方法,下面的代码片段将为您提供合理的想法。
//在string.xml文件中
<string name="welcome_text"><![CDATA[<b>Welcome,</b> to the forthetyroprogrammers blog Logged in as:]]> %1$s.</string>
Java代码
String welcomStr=String.format(getString(R.string.welcome_text),username);
tvWelcomeUser.setText(Html.fromHtml(welcomStr));
字符串文本中的CData部分即使在使用String.format方法格式化文本后也保持html标记数据不变。因此,Html.fromHtml(str)工作正常,您将在欢迎消息中看到粗体文本。
输出:
欢迎来到您最喜爱的音乐应用商店。登录为:用户名
答案 3 :(得分:4)
由于不断更新,跟踪Android支持哪些HTML代码的最佳方法是检查Html.java的源代码