ionic4 android键盘遮住输入框 2019-04-14

2019-04-14  本文已影响0人  Catnip_ea10

这个问题官网给出的解决方案地址:

https://github.com/ionic-team/cordova-plugin-ionic-keyboard

大致说keyboard这个插件依赖cordova-plugin-ionic-webview,这个插件,要先装这个插件,然后在./config.xml中增加<preference name="KeyboardResize" value="true" /><preference name="KeyboardResizeMode" value="native" />就可以了。

我主要说的是在新的项目有效,但是我做的项目中不生效的问题。由于不能调试(没有好的vpn),这个问题花了一天解决的,

结论是:我都项目在使用cordova-plugin-statusbar这个插件的时候覆盖了webView(this.statusBar.overlaysWebView(true);在最上层显示),去掉或者设置为(false)就好了。

我的解决方法是:在有遮挡输入框问题的页面增加如下代码:

 ionViewWillEnter(){
    this.service.SET_SATUSBAR_COLOR("#9babdf");
  }

 /**
   * 设置导航栏背景色
   * 同时置导航栏与webview一层
   */
  SET_SATUSBAR_COLOR(color:string) {
    this.statusBar.overlaysWebView(false);
    this.statusBar.backgroundColorByHexString(color);
  }

在tabs-page.ts增加

 ionViewWillEnter(){
    this.service.SET_SATUSBAR_OVERLAYS();
  }
/**
   * 导航栏置于最上层
   */
  SET_SATUSBAR_OVERLAYS(){
    this.statusBar.overlaysWebView(true);
    this.statusBar.styleDefault();
  }
然后相应页面html调整样式。因为我们的页面有这种样式: 微信图片_20190414101406.jpg

因此我的解决方案如上。如果有更好的解决方式。请大佬帮助我

转发请标明出处。

上一篇 下一篇

猜你喜欢

热点阅读