Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/204.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在android中显示HTML_Android_Html - Fatal编程技术网

在android中显示HTML

在android中显示HTML,android,html,Android,Html,我正在使用文本视图显示我已从HTML格式化的一些文本: Spanned s = Html.fromHtml(getString(R.string.disclaimer)); tvDisclaimer.setText(s); 文本位于使用CDATA的strings.xml中: <string name="disclaimer"> <![CDATA[ <p>blablabla</p> <ul> <li&

我正在使用文本视图显示我已从HTML格式化的一些文本:

Spanned s = Html.fromHtml(getString(R.string.disclaimer));
tvDisclaimer.setText(s);
文本位于使用CDATA的
strings.xml
中:

<string name="disclaimer">
    <![CDATA[
    <p>blablabla</p>
    <ul>
      <li>foo
      <li>bar
    </ul> 
    ]]>
</string>

喋喋不休

  • 酒吧
]]>
现在的重点是,整个事件在
Choreographer
中的
IndexOutOfBoundsException
中崩溃。它适用于一些简单的HTML,但在某些情况下,我只需添加一个字符(ø)即可使其崩溃。删除角色可以使其正常工作


如果
Html.fromHtml()
不是一个好办法,那么我可以用什么在我的应用程序中获得一些不错的富文本呢?

我想出了方法。如注释中所述,
Html.fromHtml()
方法只支持有限的一组Html。它可以通过使用
网络视图来完成:

    WebView wvDisclaimer = (WebView)findViewById(R.id.wvDisclaimer);
    wvDisclaimer.loadDataWithBaseURL("about:blank", 
            getString(R.string.disclaimer), "text/html", "utf-8", "about:blank");

我使用以下代码修复了此问题:

<string name="disclaimer">
<![CDATA[
<p>blablabla</p>
    <br>&#8226; &nbsp;foo
    <br>&#8226; &nbsp; bar
]]>
</string>

喋喋不休


•;福
•;酒吧 ]]>

希望有帮助。

您是使用html字符代码还是直接使用字符?直接使用字符。但是在其他地方,字符可以正常工作。由于
  • 不受
    Html.fromHtml()
    的支持,您有更大的问题。@commonware,好的,谢谢。可惜在文档中找不到。另外,我想要一个HtmlNotSupportedException或类似的东西。或者至少是Html.fromHtml中的一个异常。现在我在一个陌生的地方犯了一些奇怪的错误/咆哮