2010-12-16 7 views
1

Ich habe zwei Aktivitäten A und B. Was ich will ist, um Aktivität A als ein Intro zu zeigen, der Benutzer kann nicht zu ihm zurück navigieren. Gibt es eine Flagge, die ich auf Aktivität A setzen kann? Kann ich den Zurück-Button nur für eine Aktivität blockieren? Aktivität A ist natürlich meine Hauptaktivität, die nach einiger "harter Arbeit" automatisch Aktivität B startet.Block zurück Knopf für ceratin Aktivitäten

Mit freundlichen Grüßen.

Antwort

5

Sie müssen die Zurück-Schaltfläche nicht blockieren, sondern nur finish() auf Ihrer A-Aktivität aufrufen, nachdem Sie eine Absicht zum Starten von B ausgelöst haben. Mit der Zurück-Taste wird die vorherige Aktivität aus dem Aktivitätsstapel abgerufen und nicht mehr angezeigt A wenn es schon fertig ist.

1

Dazu müssen Sie die Zurück-Schaltfläche nicht blockieren. Starten Sie einfach die zweite Aktivität und beenden Sie die erste Aktivität. Und jetzt, wenn der Benutzer die Zurück-Taste drückt, werden sie zum Android-Startbildschirm und nicht zum Startbildschirm Ihrer App weitergeleitet.

Updates: Übrigens, wenn Sie die Zurück-Schaltfläche aus irgendeinem Grund abfangen möchten, überschreiben Sie einfach die OnBackPressed() -Methode der Aktivitätsklasse. See this for details.

1

Überschreiben Sie niemals die Funktionalität einer Hardwaretaste.

Sie sollten anrufen finish() in Activity A direkt nach dem Start Activity B (Aufruf der Intent).

1

es funktioniert, aber die Anwendung wird beendet, und ich bin auf androids Anwendungen Bildschirm umgeleitet. Ich möchte in Aktivität B bleiben, wenn die Zurück-Taste gedrückt wird, will ich die App nicht verlassen. Hier ist, was ich habe:

public void startProgram(Context context){ 
     Intent intent = new Intent(context, ActivityB.class); 
     startActivity(intent); 
     finish(); 
    } 
Verwandte Themen