我的应用程序正在使用JSoup下载留言板页面的HTML(在这种情况下,它是包含给定线程帖子的页面)。我想使用此HTML,去除不需要的项目,并应用自定义CSS对其进行样式设置使其在WebView中“可移动”。
我应该在处理样式时将样式注入HTML中(因为无论如何还是要处理样式),还是有一种很好的方法将CSS文件添加到我的应用程序资产中并简单地引用它。我认为后者将是理想的,但不确定如何实现。
我在WebView的loadDataWithBaseURL中看到了可以引用本地资产的提示,但不确定如何利用它。
您可以使用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文件,则无需指定基本URL。