0

我有一个 android 应用程序,其中包含已安装应用程序的列表并在单击项目时启动它们。在我的应用程序中,我使用 Intent.ACTION_CLOSE_SYSTEM_DIALOG 广播来关闭系统对话框,例如任务管理器(最近的应用程序对话框)、电源选项对话框、低电量对话框等。 ...但这会在某些设备中隐藏键盘。我想确保用户无法与我的应用程序中最近的应用程序对话框进行交互。如何关闭除键盘之外的系统对话框?如何检查键盘是否可见?是否可以检测到最近的应用程序对话框?我被困在这几个小时。任何帮助都必须感激。

4

1 回答 1

0

我已经使用此代码来检测键盘。

view.getViewTreeObserver().addOnGlobalLayoutListener(
                new OnGlobalLayoutListener() {

                    @Override
                    public void onGlobalLayout() {


                            int heightDiff = 

view.getRootView().getHeight()
                                    - view.getHeight();
                            if (heightDiff > 200) {
                                keyboardUp = true;

                                return;
                            }
                            if (keyboardUp) {
                                keyboardUp = false;

                            }
                            Log.e("Keyboard", "" + keyboardUp);
                        }
                    });
于 2013-04-19T10:38:43.247 回答