【发布时间】:2010-07-01 00:56:33
【问题描述】:
有谁知道是否可以在 android 设备上显示带有 html 代码的对话框?如果有任何提示,我将不胜感激。
我想要设计一个 html 布局并将其显示在自定义应用程序内的对话框中。
谢谢!
【问题讨论】:
标签: html android containers
有谁知道是否可以在 android 设备上显示带有 html 代码的对话框?如果有任何提示,我将不胜感激。
我想要设计一个 html 布局并将其显示在自定义应用程序内的对话框中。
谢谢!
【问题讨论】:
标签: html android containers
WebView 绝对是一种选择,因为它本质上是一个装在盒子里的网络浏览器,但就像 Mark 所说,它有点重量级,会导致明显的延迟。
TextViews 也可以处理基本的 HTML,如果您只是在寻找一些简单的格式(粗体、斜体、颜色),那么使用标准的文本视图是不错的选择。
了解 String 和 CharSequence(以及 Spannable)之间的区别很重要 - 字符串不支持 HTML,如果您从资源中获取字符串(通过 Context.getString()),它将自动剥离所有 HTML 代码。所以你需要使用 Context.getText())。
无论如何,这里是一个例子:
new AlertDialog.Builder(this)
.setTitle("HTML Example")
.setMessage(Html.fromHtml("<b>Bold text</b> <i>and italics</i>"))
.setPositiveButton("Sweet")
.create()
.show();
【讨论】:
扩展 JRL 的答案,您可以使用AlertDialog.Builder 及其setView() 在对话框的主要区域放置WebView。但是请注意,如果您没有在应用程序的其他任何地方使用WebView,那么在您第一次使用它时,初始化需要一秒钟左右的时间,这可能会使您的对话框变得迟缓。
如果您只需要基本的 HTML 格式(粗体、斜体、颜色),TextView 采用 Spannable,Android 中的 Html 类可以从 HTML 源转换为 Spannable 以与 @ 一起使用987654329@.
【讨论】:
不确定您要做什么,但 WebView 处理 HTML。
【讨论】: