美文网首页
WebView加载CSS样式

WebView加载CSS样式

作者: jiangjh | 来源:发表于2017-11-17 17:16 被阅读0次

    当加载一个网页后,想对其进行样式的修改,可以使用WebView.loadUrl加载CSS样式文件。

    • 在Raw目录下创建一个xxx.css文件,并在次文件中填写css样式
    body {
        width: 98% !important;
    }
    
    • 在java文件中,代码如下;java中用Base64进行加密,js中使用window.atob进行解密。
    private void loadCss() {
            InputStream is = getResources().openRawResource(R.raw.news);
            try {
                byte[] buffer = new byte[is.available()];
                is.read(buffer);
                is.close();
                String cssCode = Base64.encodeToString(buffer, Base64.NO_WRAP);
                String jsCode = "javascript:(function() {" +
                        "var parent = document.getElementsByTagName('head').item(0);" +
                        "var style = document.createElement('style');" +
                        "style.type = 'text/css';" +
                        "style.innerHTML = window.atob('" + cssCode + "');" +
                        "parent.appendChild(style);" +
                        "})();";
                mWebView.loadUrl(jsCode);
            } catch (IOException e) {
                Log.d(HtmlFragment.class.getSimpleName(), e.getMessage());
            }
        }
    
    

    相关文章

      网友评论

          本文标题:WebView加载CSS样式

          本文链接:https://www.haomeiwen.com/subject/rfwjvxtx.html