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调整样式。因为我们的页面有这种样式:

因此我的解决方案如上。如果有更好的解决方式。请大佬帮助我
转发请标明出处。