我的应用程序正在使用JSoup下载留言板页面的HTML(在这种情况下,它是一个包含给定线程帖子的页面)。我想使用此HTML,剔除不需要的项目,并应用自定义CSS对其进行样式设置使其在WebView中“可移动”。我应该在处理样式时将样式注入HTML中(因为无论如何都会处理样式),还是有一种很好的方法将CSS文件添加到我的应用程序资产中并简单地引用它。我认为后者将是理想的,但不确定如何去做。我在WebView的loadDataWithBaseURL中看到了可以引用本地资产的提示,但不确定如何利用它。
3 回答
紫衣仙女
TA贡献1839条经验 获得超15个赞
您可以使用WebView.loadDataWithBaseURL
htmlData = "<link rel=\"stylesheet\" type=\"text/css\" href=\"style.css\" />" + htmlData;
// lets assume we have /assets/style.css file
webView.loadDataWithBaseURL("file:///android_asset/", htmlData, "text/html", "UTF-8", null);
而且只有在此之后,WebView才能够在assets目录中查找和使用css文件。
ps而且,是的,如果您从资产文件夹中加载html文件,则无需指定基本网址。
慕勒3428872
TA贡献1848条经验 获得超6个赞
这是解决方案
将您的html和css放在/ assets /文件夹中,然后像这样加载html文件:
WebView wv = new WebView(this);
wv.loadUrl("file:///android_asset/yourHtml.html");
然后在您的HTML中,您可以按通常的方式引用您的CSS
<link rel="stylesheet" type="text/css" href="main.css" />
- 3 回答
- 0 关注
- 755 浏览
相关问题推荐
添加回答
举报
0/150
提交
取消