Nie chcę, aby użytkownik mógł wrócić do ekranu powitalnego mojej aplikacji. Wydaje się, że jednym z rozwiązań jest sprawdzenie, czy działanie poniżej bieżącego jest wystąpieniem ekranu powitalnego, a w takim przypadku zamknięcie aplikacji, jak pokazano w poniższym kodzie. Nie wiem jednak, jak sprawdzić, jaka jest poprzednia aktywność w stosie. Ktoś może pomóc? Czy jest jakiś inny sposób wyłączenia "powrotu" do danego działania?Jak mogę wyłączyć "powrót" do niektórych działań?
@Override
public void onBackPressed() {
if(<previous activity in stack is an instance of splashscreen>){
Intent exit_intent=new Intent(CurrentActivity.this, SplashScreen.class);
exit_intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
exit_intent.putExtra("EXIT", true);
context.startActivity(exit_intent);
}
}
dzięki dużo "Android: Nohistory =" true "" - to był bardzo pomocny! – Simcha
Dlaczego funkcja finish() działa? – Joop
finish() (po dodaniu w pierwotnej aktywności zaraz po rozpoczęciu następnej czynności) działa, ponieważ Android nie "wraca" do działania, które zostało zakończone (zniszczone), tylko do tych, które są wstrzymane lub zatrzymane (żywe). –