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.


参考资料:


http://stackoverflow.com/questions/3808532/how-to-set-the-initial-zoom-width-for-a-webview


你可能感兴趣的:(android)