0

我正在使用 webview 来显示图像。我使用了 webview.loadUrl("imagepath"); 这些代码显示图像但 webview 无法加载图像然后我想在 webview 中显示我的默认图像。

4

2 回答 2

1

您必须file:///在图像路径之前添加。

你有没有尝试过类似的东西

// Exemple from asset folder
webview.loadUrl("file:///android_asset/mu_image.jpg");
 // From external storage
String base = Environment.getExternalStorageDirectory().getAbsolutePath().toString();
String imagePath = "file://"+ base + "/YOUR_FILE.jpg";
webview.loadUrl(base);

编辑(在理解问题之后......)

您必须检查您的网络文件是否存在

public static boolean exists(String URLName){
try {
  HttpURLConnection.setFollowRedirects(false);
  // note : you may also need
  //        HttpURLConnection.setInstanceFollowRedirects(false)
  HttpURLConnection con =
     (HttpURLConnection) new URL(URLName).openConnection();
  con.setRequestMethod("HEAD");
  return (con.getResponseCode() == HttpURLConnection.HTTP_OK);
}
catch (Exception e) {
   e.printStackTrace();
   return false;
}
  }

然后 2 个选择: - 文件存在,显示它 - 或者,显示您的默认图像

来源:使用其 URL 检查远程服务器上是否存在文件

于 2013-11-13T12:51:54.273 回答
1

在 webview 中加载图像不是一个好习惯。

解决方案是使用某种图像加载器,最适合您的情况是 VOLLEY。它提供了比任何其他图像加载器更好的缓存和图像加载功能。

这是链接

于 2013-11-13T13:12:05.490 回答