在Android应用中显示html格式的文本

时间:2013-03-04 09:45:50

标签: android android-ui

我正在将一个Web应用程序移植到android平台。该应用程序将包含一些Web内容(使用WebView访问)和一些离线内容。我需要在主屏幕中显示一些文本作为离线内容,我有点困惑如何去做。我已经浏览了格式化文本的android文档,但我发现在处理多行文本时使用它有点乏味。所以我正在考虑创建一些HTML页面并将它们包含在我的应用程序的res文件夹中。然后使用WebView加载它们。使用这种方法是否可取?还是有更好的出路?

2 个答案:

答案 0 :(得分:10)

对于简单的文字,您可以随时在TextView上执行以下操作:

someTextView.setText(Html.fromHtml(htmlAsAString));

如果你说它更复杂(有图像和/或css等),我建议把html放在assets /文件夹中,然后从那里直接加载到WebView

答案 1 :(得分:4)

Html类可以格式化HTML文本,但它非常有限。 你可以在这里阅读文档: http://developer.android.com/reference/android/text/Html.html

您可能最感兴趣的方法是Html.fromHtml(java.lang.String)。它会返回一个Spanned对象,您可以通过调用TextView来填充textView.setText(..)

如果您发现它无法为您需要的HTML代码提供所需的支持,那么您很可能最终会使用WebView