0

我在这里看到了很多类似的问题,但似乎都不是我的问题。

我正在将我的资产文件夹的子文件夹中的本地 html 文件加载到 WebView 中。该文件位于 assets/myfolder/myfolder2/test.html 中。

同样在 assets/myfolder/myfolder2/ 我有 image.jpg。完整路径:assets/myfolder/myfolder2/image.jpg

我正在像这样加载html:

// html contains the string content of the test.html file
webView.loadDataWithBaseURL("file:///android_asset/myfolder/myfolder2/", html,
                                   "text/html", "utf-8", "about:blank");

在 html 字符串中,我有以下标记:

<img src="image.jpg" />

不显示图像。我也尝试将完整的 file:/// url 拼写到图像中,但没有成功。如果我将其更改为链接到网络上某处的图像,它就可以正常工作。为什么找不到我的本地图像?

4

2 回答 2

1

经过一番挫折,我终于发现我无法在任何 Android 设备上查看这个特定的图像,即使是从股票浏览器,尽管我认为它是一个普通的 JPG 图像。

我仍然不确定它出了什么问题,但是当我在照片编辑器中打开它并使用正常的 JPG 编码再次保存它时,它起作用了。这包括当我从我的 WebView 中的资产文件夹中引用它时。

于 2013-07-27T15:54:20.323 回答
0

要从资产文件夹加载 html,您应该使用webview.loadUrl().

  • 我在名为“folder1”和“folder2”的资产文件夹中创建了两个子文件夹。

  • 已将图像放入folder2.

  • 放置一个带有图像标签的 HTML 文件"<img src="ic_launcher.png">"

最后使用webView.loadUrl("file:///android_asset/folder1/folder2/test.html");

我可以看到在 webview 中加载的图像。

于 2013-07-24T04:02:58.793 回答