引用HTML中的资源中的图像不起作用

时间:2012-03-21 22:11:50

标签: android html image android-webview android-assets

我正在尝试在Android应用中的WebView中显示图像。该图像存在于我的Android项目的assets文件夹中。 HTML是以编程方式构建的,并在其中包含此图像:

使用以下命令将HTML加载到WebView中:

webView.loadDataWithBaseURL(urlStr,htmlText,“text / html”,“utf-8”,urlStr);

urlStr =查找其他资源所需的基本网址。 htmlText =以编程方式生成HTML

WebView加载HTML很好,但图像显示为“缺失”。我已经验证图像存在于资产中的该位置。然而,它并没有出现在WebView中。

我看过很多帖子和教程说这应该有效,但它不适合我。这是一款3.2 Android平板电脑。有人知道这只适用于某些Android版本吗?有关为什么它在我的情况下不起作用的任何想法?感谢。

2 个答案:

答案 0 :(得分:4)

好的,我终于想通了。显然,Android代码中的某处有一个错误,如果图像路径中有空格,则会失败。所以:

<img src="file:///android_asset/SkyInfo/images/Deep Sky/M13-Misti.jpg">

无法加载图片。如果您将其更改为:

<img src="file:///android_asset/SkyInfo/images/DeepSky/M13-Misti.jpg">

它会起作用(假设你已经重命名了目录)。

注意:

  • 这只是从资产中读取时的一个问题。
  • 似乎是Android 4.x的一个问题。我在4.0.4和4.3版本上遇到过这个问题,但在2.3.x版本中空格很好。

来吧Google,目录名称中的空格已经存在了15年。获得该计划。

答案 1 :(得分:4)

enter image description here

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