我想在android中的TextView上显示html文件的内容(带格式)

时间:2016-11-13 04:10:34

标签: javascript android html css

这是我要在Textview上显示的HTML文件:

<html>
<head>
    <link rel="stylesheet" href="highlight/styles/default.css">
    <script src="highlight/highlight.pack.js"></script>
    <script>hljs.initHighlightingOnLoad();</script>
</head>
<body>

<h1>C Program to Calculate Area of Circle</h1>
<p class="test"><pre><code class="c">#include&lt;stdio.h&gt;

int main() {
   area = 3.14 * radius * radius;
   printf("\nArea of Circle : %f", area);
}
</code></pre></p>
<br>
<!--Output-->
<div><br>Enter the radius of Circle : 2.0<br>
Area of Circle : 6.14<br>&nbsp;</div>
</body>
</html> 

它有一些 .js .css 文件的外部链接

我已将其存储在资源文件夹中。

htmlContentInStringFormat="";
String htmlFilename = "www/"+fileName;
AssetManager mgr = getBaseContext().getAssets();
InputStream in = mgr.open(htmlFilename, AssetManager.ACCESS_BUFFER);
htmlContentInStringFormat = StreamToString(in);
in.close();

我正在使用 mTextview.setText(Html.fromHtml(htmlContentInStringFormat)),但它正在显示纯文本。我想要正确的程式化文本,因为它在我打开 .html 文件时显示:

desired output

请帮帮我。

1 个答案:

答案 0 :(得分:0)

Html.fromHtml()可让您在HTML中查看轻量级TextView

myTextView.setText(Html.fromHtml(htmlContentInStringFormat));

如果您希望JS和CSS使用它,则需要使用WebView。要将资产中的HTML文件加载到WebView,您可以refer this answer here