在Webview中显示HTML表格

5
如何在Android的WebView中显示带有行和列的HTML表格。
给我一些示例。
3个回答

7
创建一个 HTML 模板。
    String myTable = "<table border=1>" +
        "<tr>" +
        "<td>row 1, cell 1</td>" +
        "<td>row 1, cell 2</td>" +
        "</tr>" +
        "<tr>" +
        "<td>row 2, cell 1</td>" +
        "<td>row 2, cell 2</td>" +
        "</tr>" +
        "</table>";

并加载到您的WebView

myWebView.loadDataWithBaseURL(null, myTable, "text/html", "utf-8", null);

1
它的功能很好,但问题是我无法使用HTML表格的其他功能,比如我想要减少行之间的cellspacing,或者我想要添加一些称为“边框颜色”的单元格间距的颜色,这些功能在Android上无法实现。您能否给我一个样例代码,使表格看起来像有行和列中间线的表格。 谢谢。 - Android_prog
1
在横向模式下,如果文本的大小更大,则文本会消失。无法在Web视图内使用滚动条。有什么想法如何在Web视图中实现滚动? - mainu
我写了:myWebView.loadData(myTable, "text/html", "utf-8"); 但页面没有加载。如上所述,我将其替换为myWebView.loadDataWithBaseURL(null, myTable, "text/html", "utf-8", null); 然后页面就加载了! - M. Marmor

2

对我来说也起作用:

String tag = "<table border=1>" +
                "<tr>" +
                   "<td>row 1, cell 1</td>" +
                   "<td>row 1, cell 2</td>" +
                "</tr>" +
                "<tr>" +
                   "<td>row 2, cell 1</td>" +
                   "<td>row 2, cell 2</td>" +
                "</tr>" +
             "</table>";

((WebView) findViewById(R.id.web)).loadData(tag, "text/html", "utf-8");

0
我认为这是与Android web view在2.2和2.3版本中相关的问题。像width、cell-spacing和cell-padding等表格标签在一些web视图中不受支持,因此不应该使用它们。如果你想使用webView.loadData()来样式化一个表格,请只使用内联样式和style标签。
同时,边框也应该被移除。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接