gpt4 book ai didi

javascript - WebView - 下载 javascript、css 和图像

转载 作者:行者123 更新时间:2023-11-28 08:03:21 25 4
gpt4 key购买 nike

我正在保存 WebView 的内容,以便下次启动我的应用程序时可以显示该内容。我关注了this几乎可以按我的意愿工作。

@JavascriptInterface
public void setHtml(String html) {
SharedPreferences settings = getSharedPreferences("preferences", MODE_PRIVATE);
this.html = html;
SharedPreferences.Editor prefEditor = settings.edit();
prefEditor.putString("ActivityHtml", html);
prefEditor.commit();
Log.d("html", html);
setChanged();
notifyObservers(html);
}

然后:

view.loadDataWithBaseURL("", settings.getString("ActivityHtml", ""), "text/html", "UTF-8", "");

但是,当我在日志中看到 html 时,Javascript 和 CSS 的服务器路径如下:

<link href="/Content/Sass/style_sass.css?version=1.0.1.15" rel="stylesheet">  
<img src="../Images/magnify_black.png" />

现在由于这个原因,只有文本内容显示而图像不显示。像这样:

enter image description here

如何获取 HTML 中的图像、css 和 javascript?

只是告诉我已经有以下内容:

view.getSettings().setLoadsImagesAutomatically(true);
view.getSettings().setJavaScriptEnabled(true);

最佳答案

我认为你应该从 Assets 或 SDcard 加载 CSS,就像这样:

    WebView wv = new WebView(context);
StringBuilder html = new StringBuilder();
html.append("<html>");
html.append("<head>");
html.append("<link rel=stylesheet href='css/style.css'>");
html.append("</head>");
html.append("<body>");
html.append("<h1>Some Heading</h1>");
html.append("<p>Some HTML content</p>");
html.append("<p><img style='width: 100%;' src='spidermen.jpg' /></p>");
html.append("</body></html>");
wv.loadDataWithBaseURL("file:///android_asset/", html.toString(), "text/html", "UTF-8", "");

并将文件放在正确的位置。

webview

关于javascript - WebView - 下载 javascript、css 和图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29621402/

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