2012-03-26 5 views
0

nicht verlassen Ich habe zwei Aktivitäten. Im ersten komme ich auf die zweite Aktivität von ersten so:kann meine App

Intent i = new Intent(this, SecondClass.class); 
startActivity(i); 

aber besonderer Bedingung verlangt, dass ich die erste Aktivität neu starten, weil ich es mit gleichem Weg zurück:

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

      //... 

      Intent i = new Intent(this, FirstClass.class); 
      startActivity(i); 

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

Weil ich nicht verlassen kann, erste Aktivität: Wenn ich

@Override 
    public void onBackPressed() 
    { 
     finish(); 
     System.exit(0); 
     return; 
    } 

oder

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

     finish(); 
      System.exit(0); 

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

Schließen Sie meine Anwendung, aber öffnen Sie die zweite Aktivität. Hilfe bitte!

Antwort

1

rufen Sie einfach finish() auf, nachdem Sie eine neue Aktivität gestartet haben (und erst nachdem Sie eine neue Aktivität gestartet haben) und lassen Sie android den Rest erledigen.

Es wird die zweite Aktivität starten und die erste schließen. Wenn Sie die Zurück-Taste drücken Sie nun wird es Sie in die letzte offene Aktivität nehmen (nicht unbedingt ein von Ihrem app)

2

Wenn Sie auf Ihre zweite Aktivität gehen dann die erste Aktivität schließen wie diese

Intent i = new Intent(this, SecondClass.class); 
startActivity(i); 
finish(); // Close your first activity 

Jetzt wenn Sie in Ihnen zweite Aktivität sind, dann können Sie Ihre erste Aktivität neu starten dieses

@Override 
public void onBackPressed() 
{ 
    Intent i = new Intent(this, FirstClass.class); 
    startActivity(i); 
    finish(); // Close your second activity 
} 

Es ist so einfach ist :)

+0

wow, es ist perfekt! Vielen Dank! – Leo

0

ich glaube, Sie sollten nicht t tun Hut, ich meine, starten und beenden Sie die Aktivitäten durch Zurück-Taste drücken Sie selbst, weil die Android-Plattform bietet Ihnen bereits einen Stapel von Aktivitäten, um das Verhalten der Aktivitäten im Stapel und Instanzen von ihnen zu ändern, können Sie AndroidManifest.xml dafür verwenden Activity Launch Mode

Verwandte Themen