5
page = "<!DOCTYPE HTML><html><head><meta http-equiv='Content-Type' content='text/html; charset=utf-8'>" +
                    "</head><body>" + page + "</body></html>";
            webContent.loadData(page, "text/html;charset=UTF-8", "UTF-8");

在调用 loadData 时,webview 给出“URL 无效”,在 onReceivedError 回调中,url 是“data:text/html;charset=UTF-8;UTF-8,%3C!DOCTYPE%20HTML%3E .... /body%3E%3C/html%3E"。这不会发生在我加载的所有数据上。

笔记:

  • 在果冻豆中一切正常,在 2.3 上测试时会出现此问题
  • 我尝试使用 loadDataWithBaseURL 加载数据,但 webview 不解释 html,只显示字符串内容。

谢谢!

4

3 回答 3

8
webContent.loadDataWithBaseURL(null, page, "text/html", "UTF-8")

对我有用,而使用 loadData() 我有时会遇到您的问题

于 2012-10-25T12:03:38.010 回答
2

要加载 url,您可以将代码用作

WebView myWebView = (WebView) findViewById(R.id.webview);
myWebView.loadUrl("http://www.example.com");

我认为下面的链接很有帮助

android中的webview

于 2012-10-31T10:44:36.540 回答
1

我不知道它是否有帮助,但您可以尝试更改此行:

webContent.loadData(page, "text/html;charset=UTF-8", "UTF-8");

对此:

webContent.loadData(page, "text/html", "UTF-8");

因为您已经在调用中定义了字符集

于 2012-10-31T17:47:55.090 回答