项目需求:将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.

Android WebView如何加载assets下的html文件的更多相关文章

  1. 使用WebView加载assets下的html文件

    有时候,我们需要将html文件以及所用到的图片都放在 assets/html/ 目录下.然后在页面上通过WebView来显示出来,比如给页面一个默认的显示,这样子看起来效果要好很多.代码如下: pri ...

  2. 从webview中加载assets中的html文件

    private void readHtmlFormAssets(){ WebSettings webSettings = tipsWebView.getSettings(); webSettings. ...

  3. Android WebView页面加载优化

    目前webapp越来越多,体验也越来越好,为了能够更好的使用WebView展示出流畅的的页面,可以从以下几点做优化: WebView缓存 资源文件本地存储 减少耗时操作 客户端UI优化 可能有人会说了 ...

  4. android webview无法加载网页

    主要原因是没有在AndroidManifest.xml里面设置如下: <user-permission android:name="android.permission.INTERNE ...

  5. android webview如何加载asset目录里的页面

    在asset里的页面都可以这样获得 file:///android_asset/index.html

  6. android 支持上拉加载,下拉刷新的列表控件SwipeRefreshLayout的二次封装

    上拉加载,下拉刷新的列表控件,大家一定都封装过,或者使用过 源代码,我会在最后贴出来 这篇代码主要是为了解决两个问题 1.滑动冲突得问题 2.listview无数据时,无数据布局的展示问题 下方列出的 ...

  7. Android之Android apk动态加载机制的研究(二):资源加载和activity生命周期管理

    转载请注明出处:http://blog.csdn.net/singwhatiwanna/article/details/23387079 (来自singwhatiwanna的csdn博客) 前言 为了 ...

  8. Android studio 使用心得(六)—android studio 如何加载.so文件

    之前一直没怎么注意,以为.so文件android为像eclipse一样直接加载,但是直到昨天我在android studio上调试公司项目推送消息的时候,才发现,.so文件原来没有加载成功. 可能之前 ...

  9. 你必须了解的RecyclerView的五大开源项目-解决上拉加载、下拉刷新和添加Header、Footer等问题

    前段时间做项目由于采用的MD设计,所以必须要使用RecyclerView全面代替ListView.但是开发中遇到了需要实现RecyclerView上拉加载.下拉刷新和添加Header以及Footer等 ...

随机推荐

  1. css 字数超过一行显示省略号

    display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;

  2. Redis分布式

    昨天公司技术大牛做了一个Redis分布式的技术分享: Redis分布式资源: http://redis.io/topics/cluster-tutorialhttp://redis.io/topics ...

  3. sdutoj 2603 Rescue The Princess

    http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=2603 Rescue The Princess ...

  4. oracle 复杂语句

    select nvl(sum1,'0')as sum1,nvl(sum2,'0') as sum2,da2 from( select count(*) as sum1,substr(APPLY_DAT ...

  5. JAVA测试装饰者模式

    package shb.java.demo; /** * 测试装饰者模式 * @package :shb.java.demoJava02 * @author shaobn * @Describe : ...

  6. rails控制台进入

    数据库控制台: rails db .help查看可使用的命令 rails控制台 rails c 普通ruby控制台: irb

  7. oracle 分区表的维护

    1:添加分区: ALTER TABLE SALES ADD PARTITION P3 VALUES LESS THAN(TO_DATE('2003-06-01','YYYY-MM-DD')); SAL ...

  8. angularjs---$http.post发的数据,后台取不到

    我用$http.post(url, data). 后台用play框架,不知道为什么总是取不到data数据.如果直接用$.post(url, data); 就可以! 后台Play的一个action: 打 ...

  9. hql语句查询实体类采用list方法的返回结果集

    在hibernate中,用hql语句查询实体类,采用list方法的返回结果为一个List,该List中封装的对象分为以下三种情况:1.查询全部字段的情况下,如"from 实体类", ...

  10. archlinux安装输入法需要的包及archlinux无法使用输入法的解决

    所需的包: fcitx #这货应该是主要的程序 fcitx-configtool #图形化的配置工具,非必须 fcitx-gtk2 fcitx-gtk3 fcitx-qt4 fcitx-qt5 fci ...