使用非资产文件夹中的自定义CSS在WebView中加载HTML

时间:2017-08-04 16:28:39

标签: javascript android html css webview

我在CSS目录中有一些JS个文件和/data/data/my.package/files/htmlstuff个文件。我还从网络上获得了一堆HTML内容。我想将这些本地CSSJS应用于我在WebView中加载的每个html。我怎样才能做到这一点?

如果我的CSSJS位于assets/htmlstuff目录中,那么我可以使用以下代码:

webView.loadDataWithBaseURL("file:///android_asset/htmlstuff/", htmlContent, "text/html", "UTF-8", null);

但是当/files/目录中存在文件时,如何实现相同目的?

1 个答案:

答案 0 :(得分:0)

解决方法是下面的代码:

final File filesDir = getContext().getFilesDir();
final File htmlStuffDir = new File(filesDir, "htmlStuff");
final String baseUrlPath = htmlStuffDir.getAbsolutePath() + "/";

webView.loadDataWithBaseURL("file:///" + baseUrlPath, htmlContent, "text/html", "UTF-8", null);

最后/很重要,没有它就行不通。