Wie deaktiviere ich die Schaltfläche "Zurück" in Android, während ich die Anwendung abmelde?
android
button
back
onbackpressed
Anmut
quelle
quelle
Antworten:
Überschreiben Sie die onBackPressed-Methode und tun Sie nichts, wenn Sie die Zurück-Taste auf dem Gerät bedienen möchten.
quelle
Wenn Sie nach einem höheren API-Level 2.0 und höher suchen, funktioniert dies hervorragend
Wenn Sie nach Android API Level bis 1.6 suchen.
Schreiben Sie den obigen Code in Ihre Aktivität, um zu verhindern, dass die Zurück-Taste gedrückt wird
quelle
Sie können dies auf einfache Weise tun. Rufen Sie nicht super.onBackPressed () auf.
Hinweis: - Tun Sie dies nur, wenn Sie einen starken Grund dafür haben.
quelle
Überschreiben Sie einfach die onBackPressed () -Methode.
quelle
Ich benutze es.............
quelle
Wenn Sie sicherstellen möchten, dass Ihre Android-Client-Anwendung von einem Server abgemeldet ist, bevor Ihre Aktivität beendet wird -> melden Sie sich mit einem Dienst in einem eigenen Thread ab (das sollten Sie sowieso tun).
Durch Deaktivieren der Zurück-Taste wird nichts für Sie gelöst. Sie haben immer noch das gleiche Problem, wenn der Benutzer beispielsweise einen Anruf erhält. Wenn ein Anruf eingeht, besteht für Ihre Aktivität ungefähr die gleiche Wahrscheinlichkeit, dass sie getötet wird, bevor sie eine zuverlässige Antwort vom Netzwerk erhält.
Aus diesem Grund sollten Sie einen Dienst in einem eigenen Thread auf die Antwort aus dem Netzwerk warten lassen und ihn dann erneut versuchen lassen, wenn dies nicht erfolgreich ist. Es ist nicht nur viel weniger wahrscheinlich, dass der Android-Dienst getötet wird, bevor er eine Antwort erhält, sondern sollte er vor Beendigung des Auftrags wirklich getötet werden, kann er von AlarmManager jederzeit wiederbelebt werden, um es erneut zu versuchen.
quelle
Überschreiben Sie einfach die onBackPressed () -Methode und Sie müssen nicht die Superklasse der onBackPressed-Methode oder andere aufrufen.
Oder übergeben Sie Ihre aktuelle Aktivität an die onBackPressed () -Methode.
Ersetzen Sie den gewünschten Aktivitätsnamen durch myActivity.
Wenn Sie ein Fragment verwenden, rufen Sie zunächst die Methode callParentMethod () auf
Rufen Sie dann die leere Methode auf
quelle
wenn Sie verwenden
FragmentActivity
. dann mach das soRufen Sie dies zuerst in Ihrem
Fragment
.und dann Call-
onBackPressed
Methode neben Ihrer übergeordnetenFragmentActivity
Klasse.quelle
Verwenden Sie einfach diesen Code: Wenn Sie das Zurückdrücken deaktivieren möchten, verwenden Sie nicht super.OnBackPressed ();
quelle
Wenn Sie Ihre App beim Abmelden deaktivieren möchten, können Sie ein nicht stornierbares Dialogfeld öffnen.
quelle
Sie können die
onBackPressed()
Methode in Ihrer Aktivität überschreiben und den Aufruf der Superklasse entfernen.quelle
Sie müssen nur die Methode für die Schaltfläche "Zurück" überschreiben. Sie können die Methode leer lassen, wenn Sie möchten, damit beim Drücken der Zurück-Taste nichts passiert. Bitte schauen Sie sich den folgenden Code an:
quelle
Abgesehen von diesen beiden Methoden aus der obigen Antwort.
Sie können auch
dispatchKeyEvent()
(API Level 1, Android 1.0) wie folgt überschreiben :quelle
Deaktivieren Sie den hinteren Button in Android
quelle
Für mich hat das Überschreiben
onBackPressed()
nicht funktioniert, aber das explizite Angeben, mit welcher Aktivität es beginnen soll, hat gut funktioniert:quelle
Versuche dies:
quelle
super.onBackPressed()
von derpublic void onBackPressed()
Arbeit entfernen großartig. Es ist in Android 9 getestetquelle