3

如何在HOME按钮单击时完成应用程序?

4

5 回答 5

5

You don't - just let Android suspend your app and tidy it up when necessary.

于 2011-02-28T13:22:42.207 回答
2

You should only be finishing the Activity by detecting the click and calling finish() on the activity.

于 2011-02-28T13:22:30.353 回答
2

您可以使用标志 FLAG_ACTIVITY_NO_HISTORY 设置用于启动活动的意图,并根据文档:

公共静态最终 int FLAG_ACTIVITY_NO_HISTORY

如果设置,则新活动不会保留在历史堆栈中。一旦用户离开它,活动就完成了。这也可以使用 noHistory 属性进行设置。常数值:1073741824 (0x40000000)

这可能适合用例。

于 2011-08-01T21:49:21.143 回答
2

如前所述,您真的应该考虑不使用这种方法来完成您的应用程序。

Anywho:这里有一些代码可以用来检测 Home-Button 的按下并调用适当的函数。

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    // TODO Auto-generated method stub
    if (event.getAction() == KeyEvent.ACTION_DOWN) {
        switch (keyCode) {
        case KeyEvent.KEYCODE_HOME:
            finish();
            return true;
        }
    }

    return super.onKeyDown(keyCode, event);
}
于 2011-02-28T13:50:51.600 回答
0

为了方便用户,Android 没有允许程序员处理主页按钮。当用户想要突然退出应用程序时,他会按下主页按钮。

于 2012-02-27T10:23:18.380 回答