Android WebView下隐藏缩放条(适用于3.0以下)

本文参考自:

http://www.dewen.org/q/1883


最近在搞一个项目用到WebView,需要将右下角的放大缩小条屏蔽,查了很多办法都不行,有个方法叫 SetDisplayZoomControls,但是只有API Level 11才能用,即3.0以上可以直接调用该方法,但是现在大多数项目都基于2.2,So,我试过改写WebView的onTouchEvent,但效果不明显,无意中看到一篇文章的一段代码,结果一试,居然成了!

高兴之余,不敢独享,于是将该段代码共享于此,希望能帮到有需要的人:


public void setZoomControlGone(View view){
        Class<?> classType;
        Field field;
        try {
            classType = WebView.class;
            field = classType.getDeclaredField("mZoomButtonsController");
            field.setAccessible(true);
            ZoomButtonsController mZoomButtonsController = new ZoomButtonsController(view);
            mZoomButtonsController.getZoomControls().setVisibility(View.GONE);
            try {
                field.set(view, mZoomButtonsController);
            } catch (IllegalArgumentException e) {
                e.printStackTrace();
            } catch (IllegalAccessException e) {
                e.printStackTrace();
            }
        } catch (SecurityException e) {
            e.printStackTrace();
        } catch (NoSuchFieldException e) {
            e.printStackTrace();
        }
    }

此方法在Activity中调用,其中的形参view是指WebView,原理是利用了Java的反射机制


本文参考自:

http://www.dewen.org/q/1883

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值