Warum wird onBackPressed () nicht aufgerufen?

7

Ich versuche, onBackPressed () zu überschreiben. Es scheint jedoch nicht zu erkennen, wenn ich auf die Zurück-Schaltfläche in der Aktionsleiste klicke.

Ich habe derzeit diesen Code:

%Vor%

Die Protokollnachricht erscheint nie im LogCat. Ich weiß, dass diese Protokollanweisung funktioniert, weil sie von einer anderen Methode mit einer anderen Nachricht kopiert wird, die im LogCat angezeigt wird.

Ich habe nach Antworten gesucht, und ich habe versucht, onKeyDown zu verwenden und festzustellen, ob der BACK-Button angeklickt ist, aber ich habe immer noch das gleiche Problem. Informationen zum Projekt:

  • Android Studio 0.9.3
  • Die Methode befindet sich in einer leeren Aktivität
  • Ziel sdk 21
  • Minimum SDK 15
  • Testgerät ist ein Samsung Galaxy 5 (kein Emulator)

Jede Hilfe würde sehr geschätzt werden !!

BEARBEITEN:

Dies ist eine Kopie meines Arbeitscodes (dies ist Testcode, daher ist der Name der Aktivität nicht beschreibend):

%Vor%

Die Meldung "Hit Actionbar Back Button" erscheint nun im LogCat.

    
kkimble006 20.11.2014, 17:13
quelle

2 Antworten

18

onBackPressed() wird aufgerufen, wenn der Benutzer auf eine Hardware-Zurück-Schaltfläche (oder auf die Schaltfläche "Nach oben" in der Navigationsleiste) klickt, nicht auf die Schaltfläche in der Aktionsleiste. Für diese müssen Sie onOptionsItemSelected() method überschreiben. Beispiel:

%Vor%     
aga 20.11.2014, 17:16
quelle
0

Bitte versuchen Sie diesen Code,

%Vor%     
Krunal Indrodiya 20.11.2014 17:36
quelle

Tags und Links