第七十三天至
第七十三天至
  • 发布:2019-11-10 11:40
  • 更新:2020-01-10 09:42
  • 阅读:1536

Android nvue文件下使用webview设置了scalable: true 时在访问支持缩放的html时在页面的右下角会出现缩小镜和放大镜,有没有api可以隐藏放大镜?

分类:nvue
2019-11-10 11:40 负责人:无 分享
已邀请:
龙雨溪

龙雨溪

仅屏蔽放大镜是不行的,除非禁用缩放

  • 第七十三天至 (作者)

    这样子有些难看啊,官方有没有打算提供一个可以隐藏放大镜的API啊?

    2019-11-11 18:25

第七十三天至

第七十三天至 (作者)

顶顶顶顶

第七十三天至

第七十三天至 (作者)

顶顶顶顶下

第七十三天至

第七十三天至 (作者)

官方不打算隐藏放大镜吗?

  • 龙雨溪

    我给谷歌老总打电话问了一下,他说隐藏不了,别嚷嚷了。

    2019-12-16 15:02

嘉之会

嘉之会

你解决了吗?我也遇到此问题,不知该如何解决,Android原生的可以设置settings.setDisplayZoomControls(false),uniapp的就不知道改怎么设置了。

  • 第七十三天至 (作者)

    没有解决,@官方也没有用

    2019-12-28 16:37

  • 第七十三天至 (作者)

    太丑了,你使用什么机型测试的?

    2019-12-28 16:43

  • 第七十三天至 (作者)

    我想用 plus.android 调用 webview对象,但是失败了,没有 settings 属性

    2019-12-28 17:17

嘉之会

嘉之会

我找到办法暂时解决。
webview通过代码来创建,把Android的单独区分出来。

           // #ifdef APP-PLUS  
            var wv;//计划创建的webview  
            wv = plus.webview.create("","custom-webview",{  
                //plusrequire : "none", //禁止远程网页使用plus的API,有些使用mui制作的网页可能会监听plus.key,造成关闭页面混乱,可以通过这种方式禁止  
                'uni-app' : 'none', //不加载uni-app渲染层框架,避免样式冲突  
                scalable : true, //可缩放  
                scrollIndicator : 'none',//不显示滚动条  
                progress: {color:'#FF3333'},  
                top : uni.getSystemInfoSync().statusBarHeight + 44 //放置在titleNView下方。如果还想在webview上方加个地址栏的什么的,可以继续降低TOP值  
            });  
           wv.loadURL(loadURL);  
            var currentWebview = this.$mp.page.$getAppWebview(); //获取当前页面的webview对象  
            currentWebview.append(wv);//一定要append到当前的页面里!!!才能跟随当前页面一起做动画,一起关闭  
            setTimeout(function() {  
                console.log(wv.getStyle())  
            }, 1000);//如果是首页的onload调用时需要延时一下,二级页面无需延时,可直接获取  
            // #endif

在需要显示的html页面中使用plus。直接settings调用不起用,同样使用反射调用就可以了。

if (plus.os.name == "Android") {  
                var nwv = plus.android.currentWebview();  
                var setting = plus.android.invoke(nwv, "getSettings");  
                // console.log(JSON.stringify(setting));  
                //支持缩放并隐藏控件  
                plus.android.invoke(setting, "setSupportZoom", true);  
                plus.android.invoke(setting, "setBuiltInZoomControls", true);  
                plus.android.invoke(setting, "setDisplayZoomControls", false);  
            }
  • 第七十三天至 (作者)

    我 appendJsFile 注入 你的反射代码 ,好像没有效果啊,是我注入的 js 不对吗?

    2020-01-10 20:18

  • 嘉之会

    回复 第七十三天至: 检查window.plus是否已存在,不存在则通过监听plusready事件,在执行上的方法。plus未加载是不起作用的。

    2020-01-14 17:18

  • 第七十三天至 (作者)

    回复 嘉之会: appendJsFile方法就是在 默认在 plusready 准备好的注入的 js ,我试过了,plus存在,但是隐藏不了,你的三条反射代码我取反之后是效果是生效的(从缩放变成不能缩放),但是依旧不能隐藏放大镜

    2020-01-14 21:17

该问题目前已经被锁定, 无法添加新回复