Android WebView文字大小调整及页面缩放调整

2019-05-21 12:38:57

参考地址 Android WebView文字大小调整及页面缩放调整

初学者使用webview难免会面对页面缩放,展示与预期不符的问题,这里有几个处理方案:

方案一、通过屏幕密度调整分辨率
        WebSettings settings = mWebView.getSettings();       int screenDensity = getResources().getDisplayMetrics().densityDpi;
        WebSettings.ZoomDensity zoomDensity = WebSettings.ZoomDensity.MEDIUM;        switch (screenDensity) {            case DisplayMetrics.DENSITY_LOW:
                zoomDensity = WebSettings.ZoomDensity.CLOSE;                break;            case DisplayMetrics.DENSITY_MEDIUM:
                zoomDensity = WebSettings.ZoomDensity.MEDIUM;                break;            case DisplayMetrics.DENSITY_HIGH:
                zoomDensity = WebSettings.ZoomDensity.FAR;                break;
        }
        settings.setDefaultZoom(zoomDensity);
方案二、设置自适应
        settings.setUseWideViewPort(true); 
        settings.setLoadWithOverviewMode(true);

或者也可以通过

        settings.setLayoutAlgorithm(LayoutAlgorithm.SINGLE_COLUMN);

原文:简书ThinkinLiu 博客: IT老五

另外,WebView中文字大小也可以进行调整,通过以下方法可以调整文字大小:

        settings.setTextZoom(100);

中间int参数是指字体与原大小的百分比。



  • 2019-06-10 11:54:52

    html.div禁用点击事件

    今天做项目中偶然误把元素加上了pointer-events属性,结果导致后来在js中给该元素加点击事件不能用,检查了半天才发现是这个属性的问题。之前没有好好研究,于是决定仔细研究一下。

  • 2019-06-12 22:34:16

    PHP身份证号打星号

    一个很简单的问题,想把身份证的号生日的4位隐藏,一开始查函数居然没有看到,然后用了好几个函数处理,觉得太麻烦就上网搜,后来发现有一个函数就能直接处理,我居然没看到~~初学者~~

  • 2019-06-13 10:09:51

    java(Android)跨Module调用对应类方法需求解决方案

    在开发组件化项目中,遇到一个这样的问题,两个不同的Module相互之间没有任何直接依赖关系,现在需求是需要在Module_A中调用Module_B中的某个类的方法,以下为解决此问题的方法;

  • 2019-06-13 11:31:32

    Android Studio接入ARouter以及简单使用

    你可能会说如果我的A module依赖了 B module,那么只要在B里面配置是不是就可以了?绝对不行!无论module之间关系如何,必须要同样配置!包括主项目和library项目!

  • 2019-06-13 11:34:24

    Android组件化方案

    1为什么要项目组件化 2如何组件化 3组件化实施流程