检查软键盘是否已关闭

时间:2012-08-17 14:00:31

标签: android opengl-es input android-softkeyboard glsurfaceview

我正在使用GLSurfaceView来渲染我的GUI。在一种情况下,我需要用户输入一个数字,为​​了实现这一点,我使用了一个带有我的GLSurfaceView的FrameLayout和另一个带有EditText的虚拟布局。当需要输入时,我将焦点EditText并强制显示软键盘。然后我会听各种方法来结束输入,输入密钥,IME_ACTION_DONE,后退密钥等。

然而,我刚刚意识到一个不起作用的案例。在某些键盘上有一个“隐藏键盘”按钮,根本不发送键码(有些键盘代码从此键发送回来)。键盘刚关闭,我无法确定输入已完成。而EditText仍然是专注的。

有没有办法捕捉到这个事件,还是以其他任何方式查看用户是否关闭了键盘?

1 个答案:

答案 0 :(得分:0)

有时你必须在盒子外思考..在某些情况下,我找不到任何方法来查看用户是否隐藏了键盘。也许没有办法。所以我开始考虑如何在带有输入字段等的“普通”xml布局中工作。因为我从未想过这是一个问题。答案很简单。这些表单总是有“完成”,“保存”,“更新”或类似按钮。

所以......我最后添加了一个按钮作为额外的选项,让用户告诉我的应用他们完成了输入。 :)