在将页面加载到WebView之前,使用本地Android资源替换HTML文档的图像

时间:2014-12-10 16:42:28

标签: android html webview

我知道出于安全原因,HTML标准不再允许将本地资源加载为文档中的图像。 无论如何,如果我想在WebView中加载本地页面,我发现我必须复制android-asset项目文件夹中的html文件。

如果我想使用混合方法怎么办? 我想从uri获取HTML文档,用本地路径替换src HTML标记的img属性的值,然后在WebView中加载代码。

拥有这样的html文档:

<hmtl>
    <head>
    </head>

    <body>
        <img src="http://URL-SITE/img/x.jpg">
    </body>
</hmtl>
  • 如何将http://URL-SITE/img替换为本地图像资源的路径 之前页面是否由WebView加载?

  • 我已尝试将本地图片放在android-asset文件夹中并更改file:///android_asset/img/x.jpg中的src值,但它不起作用。

1 个答案:

答案 0 :(得分:1)

好的,谢谢你的评论。 问题是我使用了命令 loadData

String html ="<html> <head></head> "
              +" <body>  <img src=\"file:///android_asset/img/x.jpg\"> "
              +"</body> </html>"; 

myWebView.loadData(html, "text/html; charset=UTF-8", null);

而不是

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