Как переключить активность, не убивая их в Android? - PullRequest
0 голосов
/ 04 апреля 2020

У меня есть этот 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

В моем другом Деятельности (Дом) есть логическое значение, чтобы проверить, был ли я дома раньше

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(); //
}

Моя идея такова: если я раньше не посещал дом и не переключался на активность в ресторане, я хочу «запомнить» данные в разделе «Домашняя активность», чтобы продолжить игру после возвращения домой, но она всегда начинается с самого начала. home ... Я не уверен, какие флаги мне нужно установить или какой метод восстановить это состояние, откуда именно я переключаю активность.

1 Ответ

0 голосов
/ 04 апреля 2020

Как прокомментировал Амин выше, finish(); означает, что первое действие завершило свою работу, и приложение завершит его, если вы удалили его, начнется второе действие, но первое действие все еще будет на своем месте, и вы можете go вернуться к нему, просто нажав кнопку «Назад» на вашем телефоне или виртуальном устройстве.

...