android - 如何关闭 Activity 并返回到android中的上一个 Activity

标签 android android-activity

我有一个主要 Activity ,当我单击一个按钮时,开始一个新 Activity ,我使用以下代码来执行此操作:

Intent intent = new Intent(this, SettingsActivity.class);
startActivity(intent);

以上代码是从主 Activity 中运行的。

现在在我的主要 Activity 调用的新 Activity 中,我有一个后退按钮。 当我点击这个后退按钮时,我希望我的新 Activity 关闭,它必须回到原来的主要 Activity 。

我尝试调用 super.finish() 并且只是调用 finish() (来自新 Activity ),但这会关闭我的整个应用程序(包括我的主要 Activity ) .

如何关闭当前焦点所在的 Activity,然后返回主 Activity?

已编辑

我手机的后退按钮也关闭了我的整个应用程序,这让我认为我错误地启动了第二个 Activity ?


好的,我一直在寻找,

我创建了一个设置 Activity ,它使用相同的 list 代码和相同的代码来启动 Activity 。

对于设置Activity,当我按下后退按钮时,它会返回到Main Activity。

使用上面提到的主要问题中的 Activity ,它只会退出我的整个应用程序。

所以问题似乎不在于完成 Activity 的代码,而是 Activity 本身。

最佳答案

我认为您在启动 SettingsActivity 之前在 MainActivity 中调用 finish() 方法。

您所描述的场景将通过以下两种方式发生:

任何一个

您在 AndroidManifest.xml 中为 MainActivity 设置了 android:noHistory = "true",这会导致 MainActivity finish 自动按返回键。

在切换到“SettingsActivity”之前,您已经在 MainActivity 中调用了 finish(),这会杀死它。当您按下返回按钮时,由于堆栈中没有预设其他要弹出的 Activity ,它会返回到主屏幕。

关于android - 如何关闭 Activity 并返回到android中的上一个 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15393899/

相关文章:

android - 在 Activity 之间保留 Google Play 服务登录

android - 使用 ActivityUnitTestCase 测试对 Android ListView 的点击

android - 查看 Binder 和 ClassCastException

android - 即使按下锁定按钮也能保持屏幕上的 Activity

android - 如何使用 ant 关闭被测 Android 应用程序?

android - 渲染/显示和播放嵌入 pdf、Android 的 youtube 视频

android - 带有附加信息的 MediaType

android - 在所有 android Activity 中保持变量值

java - 按后退按钮可返回到第一个启动的 Activity

java - 如何在启动时仅对 Android View 进行一次动画处理?