打开Android键盘后,Phonegap Immersify模式停止

时间:2015-03-18 15:14:14

标签: android cordova

我正在制作一款基于phonegap和cordova的Android应用程序,并试图配置浸入式模式,以便它始终可以正常工作。当应用程序刚打开或恢复时,当前脚本会运行。问题是这个应用程序需要填写一些文本字段,但每次你调用android键盘时,沉浸式模式将停止工作并且不会被重新打开。使用给定的phonegaps事件列表我不知道如何解决它。一种方法是绑定在app中按下的每个按钮再次调出功能,但是在没有必要的情况下一遍又一遍地调出这个功能似乎很愚蠢。

window.ImmersiveMode = {
initialize: function()
  {
     this.bindEvents();
     console.log("Immersify is running");
  },
  // Bind Event Listeners
 bindEvents: function()
  {
      document.addEventListener('deviceready', this.onDeviceReady, false);
      document.addEventListener('resume', this.onResume,false);
      document.addEventListener('pause', this.onPause, false);
  },
 onDeviceReady: function()
  {
Immersify.enableSticky();
  },
onResume: function()
{
Immersify.enableSticky();
},
onPause: function()
{
Immersify.disable();
},
};

ImmersiveMode.initialize();

2 个答案:

答案 0 :(得分:0)

我有同样的问题,我想我有坏消息。我做过一些研究,那里有一些研究。是全屏模式的错误。当它隐藏在hidekeyboard上并且没有触发showkeyboard事件。仅在全屏模式关闭时。检查此链接以更好地了解错误:

https://issues.apache.org/jira/browse/CB-392

如果你想知道这是事件:

document.addEventListener(' hidekeyboard',this.onKeyboardHide,false); document.addEventListener(' showkeyboard',this.onKeyboardHide,false);

抱歉这个坏消息! :/

答案 1 :(得分:0)

我遇到了同样的问题。即使沉浸式模式(全屏)处于活动状态,使用ionic-plugin-keyboard也会触发这些事件。

所以,安装该插件并像这样使用它:

window.addEventListener('native.keyboardhide', event => { console.log(event); });