Android - 点击返回

时间:2014-01-15 17:21:05

标签: android android-intent back activity-finish

你好我想创建一个Activity,点击它关闭它,而不是前一个活动。 请告诉我怎么做。 提前谢谢

3 个答案:

答案 0 :(得分:0)

尝试将其放入您的活动类:

 @Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_BACK) {

        // Add you custom code here 

        return true;
    }
    return super.onKeyDown(keyCode, event);
}

答案 1 :(得分:0)

您可以通过覆盖'onBackPressed'来接收新闻,例如:

@Override
public void onBackPressed() {
    android.os.Process.killProcess(android.os.Process.myPid());
}

然而,这是不好的做法。当用户按下后退按钮时,您不应退出应用程序。如果用户想要关闭应用程序......他会按下主页按钮。 也许你应该读这个.. Is quitting an application frowned upon?

答案 2 :(得分:0)

我强烈建议不要将你的问题解决为“当我按回”时我想要关闭我的应用程序,因为这往往会转向邪恶的Android反模式来杀死进程(如其他答案所示)。

相反,我会更多地关注您不希望应用程序中的先前Activities保存在应用程序的后台堆栈中。一种简单的方法是,只要您稍后拨打startActivity(...),就会立即拨打finish(),从后台删除旧的Activity。当您按Back时,“之前的”Activity现在是首先启动您的应用程序(可能是用户的应用程序启动器),并将显示。

或者,如果您还希望在用户导航到其他应用程序时关闭应用程序(例如使用“近期任务”,打开通知或接听电话),则可以将noHistory标志添加到您在清单中的活动如下:

<activity
    ...
    android:noHistory="true"
    ...
</activity>

noHistory标记可确保当用户离开Activity时,会自动通过finish()完成。

相关问题