[在Android中打开对话框时截获HOME键

问题描述 投票:2回答:4

[如何在Android屏幕上打开对话框时截取HOME键。

android android-layout android-widget android-manifest
4个回答
3
投票

我已经解决了我的问题。现在我可以按照我想要的方式成功拦截HOME按钮。我已经在此博客中写下了所有步骤:https://nishandroid.blogspot.com/2012/01/intercept-home-key-android.html


2
投票

根据android实现,您无法使用OnKeyListener()之类的简单API来捕获Home按钮按键事件。


0
投票

[如果您想通过确定用户是否故意移出了Activity(点击Activityback按钮来正确管理home中的对话框外观)或无意间隐藏了其他活动(例如来电)使用onUserLeaveHint

例如:

@Override
protected void onUserLeaveHint() {
    super.onUserLeaveHint();

    mDialog.dismiss();
}

-1
投票

设置对话框的DialogInterface.OnKeyListener

new OnKeyListener() {

                @Override
                public boolean onKey(DialogInterface dialog, int keyCode, KeyEvent event) {
                    // TODO Auto-generated method stub

                    if(keyCode == KeyEvent.KEYCODE_HOME){
                        //do something
                    }
                    return false;
                }
            });
© www.soinside.com 2019 - 2024. All rights reserved.