Android:如何判断软键盘是否显示?

jam*_*mes 20 android

继承人的困境:我正在显示一个屏幕,其中有一个输入字段和一个标签内的2个按钮(共有3个标签,它们位于屏幕的底部).2个按钮设置在屏幕的左下方和右下方,位于选项卡的正上方.当我点击输入字段时,标签和按钮都被推到键盘顶部.

我希望只按下按钮,并将标签保留在原来的位置,在底部.一旦我确定软键盘正在显示,我正在考虑将标签的可见性设置为GONE,并且一旦软键盘消失就可以看到VISIBLE.

是否有某种类型的软键盘监听器,或者输入字段?也许OnFocusChangeListener是编辑文本的一些棘手的用法?如何确定键盘是否可见?

pjv*_*pjv 5

确定键盘是否显示是不可能的.

您可能希望使用windowSoftInputMode清单中的xml标记将其全部禁用:http://developer.android.com/reference/android/R.attr.html#windowSoftInputMode.或者您可以查看如何移除焦点以隐藏键盘:在活动时隐藏软键盘而无需任何键盘操作.

两者都不能完全解决您的问题.我记得读过一篇博文章强烈建议不要在屏幕顶部使用标签,而不是屏幕顶部,因为UI清晰度原因.我建议你跟进.

  • 是否仍然无法可靠地确定是否显示软键盘?五年过去了...... (3认同)