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.