Phonegap + Android 4.4:如何检测SoftKeyBoard何时隐藏?

我试图添加一个事件监听器来检测软键盘何时隐藏,但它不起作用!

我试过这段代码:

document.addEventListener('deviceready', function() { document.addEventListener("hidekeyboard", function() { alert('hidekeyboard!'); }, false); }, false); 

当输入失去焦点时我试图检测到它,但是当软键盘隐藏时,输入元素仍然是焦点。

提前致谢!

试试这个::

  var lastFocused; $(document).on("focusout","input[type='date'],input[type='time'],input[type='week'],input[type='text'],textarea,select",function(){ lastFocused = undefined; // console.log("yes me call focusout"); }); $(document).on("focus","input[type='date'],input[type='time'],input[type='week'],input[type='text'],textarea,select",function(){ if(utils.isUndefined(lastFocused) == false && lastFocused.is($(this)) == false){ lastFocused.blur(); /////////////////////////////////////////////////////////////////////////////// // console.log("Here you can get your keyboard is hide"); } lastFocused = $(this); // console.log("yes me call focus"); }); 

我找到了解决问题的方法。 问题是’hidekeyboard’事件从未由Phonegap触发,因为webview有错误并且是静态的(当软键盘被触发时它永远不会resize)。 由于webview从不resize,因此永远不会触发事件。

我们可以在LinearLayoutSoftKeyboardDetect类中找到事件的触发。

谢谢大家!