java - Android 中如何切换 Activity 而不杀死它们?

标签 java android android-activity

我有这个 Activity1(餐厅),它切换到 Acticity2(家庭)

                    Intent intent = new Intent(RestaurantActivity.this, HomeActivity.class);
                    intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                    startActivity(intent);
                    finish(); // Call once you redirect to another activity

我的其他 Activity (家)有一个 boolean 值来检查我之前是否在家

public static boolean visitedHomeAlready = true;

if(!visitedHomeAlready) {
                        Intent intent = new Intent(HomeActivity.this, RestaurantActivity.class);
                        intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                        startActivity(intent);
                        finish(); //
}

我的想法是:如果我以前没有去过家并切换到餐厅 Activity ,我想“记住”家庭 Activity 中的数据,以便回家后继续我的游戏,但它总是从我的头开始家... 我不确定必须设置哪些标志或使用哪种方法从切换 Activity 的确切位置恢复该状态。

最佳答案

正如 Amin 上面评论的那样,finish(); 意味着第一个 Activity 已完成其工作,应用程序将结束它,如果您删除它,第二个 Activity 将启动,但第一个 Activity 仍将位于其位置,您只需单击手机或虚拟设备上的后退按钮即可返回到该位置。

关于java - Android 中如何切换 Activity 而不杀死它们?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61031537/

相关文章:

java - Android 上的 onActivityResult

java - 如何用 Jsoup 解析这个 html 表

android - MPAndroidChart 点击 pieChart Slices

android - 如何杀死我自己的 Activity - 艰难的方式

java - 禁用选项卡滑动

android - ADB 在 Eclipse 中崩溃

java - 是否可以将枚举属性的空值存储到数据库中?

java - 两个 tableView 和一个使用 JavaFx 的选择

java - 如何防止在 JTable 中选择特定列的可能性?

java - 当按下主页时,如何从开始的登录屏幕启动应用程序?