Android中的Android更改src img

时间:2014-03-25 10:31:21

标签: android image webview android-webview

我有一个webview,其中我从Web服务加载内容(新闻)。

唯一的问题是,我在这个内容中的图片有这样的src:

<img src='images/myimage.png'> 

当然,在我的网页浏览中,我无法显示此图片。

那么,我怎样才能更新我所有图像的src? (添加正确的网址以显示它)

我正在加载我的内容:

                String htmlNews = "<html><head><link rel=\"stylesheet\" type=\"text/css\" href=\"style.css\" />" + htmlContent;
            webview.loadDataWithBaseURL("file:///android_asset/", htmlNews, "text/html", "UTF-8", null);

4 个答案:

答案 0 :(得分:0)

图片放入资源目录eg: assets/img.png

然后使用以下命令加载html:

webView.loadDataWithBaseURL("file:///android_asset/", htmlData, "text/html", "utf-8", null);

引用你的img:

<img src="img.png">

您也可以尝试

String data = "<body>" + "<img src=\"large_image.png\"/></body>";

W ebView.loadDataWithBaseURL("file:///android_asset/",data , "text/html", "utf-8",null);

答案 1 :(得分:0)

在Webview中加载Html文件并将您的图像放入资源文件夹并使用Html读取该图像文件。

<html>
  <table>
    <tr>
      <td>
        <img src="abc.gif" width="50px" alt="Hello">
      </td>
    </tr>
  </table>
</html>

现在在Webview中加载该Html文件

webview.loadUrl("file:///android_asset/abc.html"); 

答案 2 :(得分:0)

解析你的html代码:

String web = "<img src='images/myimage.png'>";
String replace = "src='";
String replaceWith = "src='http://example.com/";
String webParsed = web.replace(replace, replaceWith);
System.out.println(webParsed);

其中http://example.com/应该是您要添加到src标记的前缀。

答案 3 :(得分:0)

我拿起@deveLost's comment,为了得到更多的关注,把它留在这里。

有一个<base> tag定义了基本URL,您不必拦截以/或相对于路径开头的任何内容,HTML客户端将自动在

上运行。
val yourBaseUrl: String = ...
val originalContent: String = ...
val fixedContent = "<base href='$yourBaseUrl'>$originalContent"
webView.loadData(fixedContent, "text/html", "UTF-8")