2010-10-21 11 views
5

Ich mag Hardware in Android-Taste zurück zum Block, um aus gehen zurück auf andere Aktivitäten zu verhindern .. Vielen Dank im Voraus ...Block-Zurück-Taste in android

+0

Tun Sie dies nicht .. – Falmarri

+0

Kein Grund zur Abstimmung getan, wie die Frage legitim ist: Sie können zurück Schaltfläche für Dialoge, so zumindest verhindern Wenn Sie eine Aktivität in einem Dialogstil verwenden, kann es sinnvoll sein, den Zurück-Button zu blockieren. – sven

Antwort

17

Hier ist der Code, den Sie die Zurück-Taste in einer Aktivität korrekt auf allen Versionen der Plattform erlaubt die Handhabung:

@Override 
public boolean onKeyDown(int keyCode, KeyEvent event) { 
    if ( Integer.valueOf(android.os.Build.VERSION.SDK) < 7 //Instead use android.os.Build.VERSION.SDK_INT < android.os.Build.VERSION_CODES.ECLAIR 
      && keyCode == KeyEvent.KEYCODE_BACK 
      && event.getRepeatCount() == 0) { 
     // Take care of calling this method on earlier versions of 
     // the platform where it doesn't exist. 
     onBackPressed(); 
    } 

    return super.onKeyDown(keyCode, event); 
} 

@Override 
public void onBackPressed() { 
    // This will be called either automatically for you on 2.0 
    // or later, or by the code above on earlier versions of the 
    // platform. 
    return; 
} 

Quellen: http: //android-developers.blogspot.com/2009/12 /back-and-other-hard-keys-three-stories.html

+0

Hervorragend zu wissen, vor allem wegen des unbeholfenen Frgagment-Backstacks von Android, der es nicht erlaubt, die ältesten Elemente zu löschen und gleichzeitig das Neueste zu behalten. –

+0

@ 100rabh, Ich habe Ihren obigen Code verwendet, der perfekt in meinem GameView funktioniert hat. In der Ansicht habe ich jedoch Dialog-Popups. Wie kann ich die obige Deaktivierung der Zurück-Schaltfläche für die Popups implementieren? Danke –

+0

@LandLPartners Für Dialoge müssen Sie Schlüssel mit [DialogInterface.OnKeyListener] (http://developer.android.com/reference/android/content/DialogInterface.OnKeyListener.html) behandeln. Fange einfach den Zurück-Schlüssel wie oben und du bist fertig! – 100rabh

4

Wenn die ‚andere Tätigkeit‘ Sie ist, Sie können festlegen, dass sie nicht in der Verlaufsliste angezeigt wird.

Ansonsten denken Sie daran, dass das Telefon dem Benutzer gehört und nicht Ihnen, und hören Sie auf, ihnen zu sagen, was sie mit ihrem Gerät tun können und was nicht.

+0

+1 Hören Sie auf, mit dem erwarteten Verhalten zu scherzen. – benvd

+2

Ich denke in einigen Fällen ist das akzeptabel. Ich bin gerade in einen Bereich gelaufen, in dem ich eine Reihe von Voreinstellungen habe, die automatisch gespeichert werden, wenn der Benutzer zurückgeht, aber wenn sie vergessen haben, ein Feld auszufüllen, warne ich sie, ob sie Änderungen verlieren wollen oder nicht. .. – Redth

Verwandte Themen