1

嗨,我写了以下代码:

public boolean onKeyDown(int keyCode,KeyEvent event) {
    if (keyCode==KeyEvent.KEYCODE_HOME) {
        showDialog(MY_DALOG);
        return  true;
    }
    return true;
}

但是当我按下时,调试时HOME BUTTON它不会调用该行。if(keyCode==KeyEvent.KEYCODE_HOME)

另一方面,它调用onPause(). 我已将我的代码放入其中,onPause()但它仍然SuperNotFound在 Logcat 中显示异常。

知道如何dialog通过按来显示 aHOMEKEY吗?

4

4 回答 4

3

Home Button将由 中PhoneWindowManager的处理Android framework。它将被发送到Launcher应用程序。没有其他应用程序将在其 Activity 中接收它。

于 2013-05-02T10:37:23.300 回答
2

KeyEvent.KEYCODE_HOME is not for the developers. Android has made it safe for themselves. So that no application would force the user to stay inside their application.

于 2013-05-02T10:22:22.860 回答
0

这实际上是可能的。但你必须制作自己的“主屏替换”应用,并让用户将你的应用设置为用户的新主屏。但这可能比您正在寻找的解决方案复杂得多......

于 2013-05-02T10:37:02.053 回答
0

对不起。back button您可以通过按下设备来显示警报对话框。

但是,您无法通过HOME Button按下来实现这些功能。因为,Android 被设计为自动启动home page,而不考虑 UI 上现在发生的任何事情,同时按下它。

于 2013-05-02T10:35:00.323 回答