gpt4 book ai didi

java - Android - loadDataWithBaseURL

转载 作者:太空宇宙 更新时间:2023-11-04 11:36:20 26 4
gpt4 key购买 nike

我正在使用 webview 在屏幕上显示 html 页面。我的 html 页面包含图像标签,其中所有图像都存储在具有子文件夹的 android 的 asset 文件夹中

assets/userfile/images/01.jpg assets/userfile/images/04.jpg

我正在使用java类中的以下代码加载html

String htmlFilename = "sample.html";
AssetManager mgr = getBaseContext().getAssets();
try {
InputStream in = mgr.open(htmlFilename, AssetManager.ACCESS_BUFFER);
String htmlContentInStringFormat = StreamToString(in);
htmlWebView.loadDataWithBaseURL("file:///android_asset", htmlContentInStringFormat, "text/html", "utf-8", null);

} catch (IOException e) {
e.printStackTrace();
}

我的 html 代码是

<p><img alt="Comet 67P" src="/userfile/images/01.jpg" style="float:right; height:239px; width:300px" /></p>

<p><img alt="Comet 67P" src="/userfile/images/04.jpg" style="float:right; height:239px; width:300px" /></p>

但是图像没有加载到 webview 中。

相反,如果我用java代码替换

 htmlWebView.loadDataWithBaseURL("file:///android_asset/userfile/images/", htmlContentInStringFormat, "text/html", "utf-8", null);

如果将 html 更改为

<p><img alt="Comet 67P" src="01.jpg" style="float:right; height:239px; width:300px" /></p>

<p><img alt="Comet 67P" src="04.jpg" style="float:right; height:239px; width:300px" /></p>

然后就可以正常工作了..“/userfile/image/”是从服务器动态生成的,因此我不想将其作为基本URL

最佳答案

你有没有尝试过这样的事情:

htmlWebView.loadDataWithBaseURL(null, htmlContentInStringFormat, "text/html", "utf-8", null);

<p><img alt="Comet 67P" src="file:///android_asset/userfile/images/01.jpg" style="float:right; height:239px; width:300px" /></p>

<p><img alt="Comet 67P" src="file:///android_asset/userfile/images/04.jpg" style="float:right; height:239px; width:300px" /></p>

关于java - Android - loadDataWithBaseURL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43233699/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com