Android WebView如何加载assets下的html文件

项目需求:将html文件以及所用到的图片都放在 assets/html/ 目录下。然后在页面上通过WebView来显示

直接付上代码:

private void readHtmlFormAssets(){
        WebSettings webSettings = tipsWebView.getSettings();
        
        webSettings.setLoadWithOverviewMode(true);
        webSettings.setUseWideViewPort(true);
        
        tipsWebView.setBackgroundColor(Color.TRANSPARENT);  //  WebView 背景透明效果,不知道为什么在xml配置中无法设置?
        tipsWebView.loadUrl("file:///android_asset/html/tips.htm");
    }

以上就是常用的webView显示设置,通过上段代码就可以成功显示html文件,只要保证html代码中图片是相对地址,且能正确找到就能正常显示网页中所包含的图片。(本例中图片就位于同一目录下。)

显示效果:点击时可以缩放,图片正常显示。初次显示会缩放至合理的大小。因此上段代码是以后的通用代码库

注: WebView默认显示效果就是100% px    显示,我想要的效果是缩放到合理大小让内容全部可见。所以你可以通过 setInitialScale来设置缩放,不过不同screen 需要设置不一样的比例,而这个参数又不好在xml中设置,所以比较麻烦。用了上面的代码,这个问题也给解决了。

I also experimented with setInitialScale but on different screen sizes and web page sizes that won't be as graceful as the browsers scaling.

上一篇:pycharm使用杂记


下一篇:在Spring Boot中使用 @ConfigurationProperties 注解