2010-12-27 11 views
3

ich die folgende Anwendung fließen in meiner android app,wie haben die Aktivität Stapel löschen in android

Login-> Home-> screen1-> screen2-> screen3-> screen4-> logout

In der screen4 habe ich einen Abmelden-Button, mit dem sich der Benutzer aus der Anwendung ausloggen und neu anmelden kann. Wenn ich mich erneut bei der App anmelde, werden die vorherigen Daten weiterhin angezeigt. Gibt es eine Möglichkeit, die Anwendung neu zu starten, wenn sich der Benutzer von der App abmeldet?

HINWEIS: alle oben genannten Aktivitäten starten Modus auf "einzelne Aufgabe" gesetzt,

Grüßen, Sam.

Antwort

6
+0

thx Kiril für quik antworten Ich habe versucht, den untenstehenden Code, aber nicht luck.public void signOutHandler (View anzeigen) { Intent i = neue Absicht (this, login.class); i.setFlags (Intent.FLAG_ACTIVITY_CLEAR_TOP); startAktivität (i); } – Sam

+0

@Sam Können Sie näher erläutern, warum es scheint, nicht zu funktionieren? –

+0

Nun, ich habe versucht, die oben genannte Methode auf dem Logout-Button onclick-Ereignis, möglicherweise habe ich es falsch gemacht haben, können Sie mir genau sagen, wo ich dieses Attribut definieren sollte? – Sam

-1

Konfigurieren Sie diese für Ihre Tätigkeit in AndroidManifest.xml. Das Attribut lautet android:clearTaskOnLaunch.

+0

Ich denke, dass dieses Attribut nützlich sein wird, wenn Benutzer auf die Schaltfläche HOME oder Zurück auf dem Telefon klicken, in meinem Fall muss ich die Schaltfläche onClick-Ereignis verwenden, um den Stapel zu löschen. – Sam

2

Sie können ein statisches Flag festlegen, wenn der Benutzer auf logout klickt und in jeder Aktivität dieses Flag in onResume() überprüft und finish() aufruft. Das ist aber irgendwie hacky.

0

Nun, ich weiß nicht, es ist das, was Sie wollen, aber kann Finishing-Aktivität vor dem Starten einer anderen und Speichern von Login im Application Context helfen kann?

Verwandte Themen