"如何在textview上显示android中的div html内容

时间:2015-04-08 10:42:19

标签: android html textview

我对字符串有价值:

String htmlValue = "<div style="text-align: center;"><span style="font-family: impact, chicago; font-size: 18px;">Exchange Offer !!&nbsp;</span></div>
    <div style="text-align: center;"><span style="font-size: 14px;">any mobile phone</span> , <span style="font-size: 14px;">give your</span> <span style="font-family: impact, chicago; font-size: 20px;">take new one</span>.</div>";

以及如何显示textview中包含的此类型div。

我试过这个,但只有内容显示div样式无法显示。

Spanned result= Html.fromHtml(htmlValue);
tvFooter.setText(result);

 tvFooter.setText(Html.fromHtml(htmlValue));

此处定义:http://commonsware.com/blog/Android/2010/05/26/html-tags-supported-by-textview.html,支持div,但通过执行上述操作可以获得准确的预期输出。 我有两个上面的技巧,但没有工作。

错误输出:

enter image description here

此预期输出

enter image description here

3 个答案:

答案 0 :(得分:2)

在我扫描 /frameworks/base/core/java/android/text/Html.java 的源代码时,不支持属性style和标记span。建议使用webview而不是textview

Lollipop似乎支持以下标签或属性,

 - <br>
 - <p>
 - <div>
 - <strong>
 - <b>
 - <em>
 - <cite>
 - <dfn>
 - <i>
 - <big>
 - <small>
 - <font color="..." face="...">
 - <blockquote>
 - <tt>
 - <monospace>
 - <a href="...">
 - <u>
 - <sup>
 - <sub>
 - <h1>
 - <h2>
 - <h3>
 - <h4>
 - <h5>
 - <h6>
 - <img src="...">

答案 1 :(得分:1)

你需要在内部写\之前“因为他们在正确结束前关闭你的字符串,就像Jemshit Iskenderov所说。

此外,标签样式和范围无法在textview中显示。检查this link以获取在textview中使用的HTML标记列表。

答案 2 :(得分:0)

Html.fromHtml()check here所有html标签都不支持textview中支持的标签。所以最好使用webview而不是textview来加载html内容。像

 yourwebview.loadData(yourhtmlData, "text/html", "UTF-8");