Prüfen welches Layout aktiv ist

  • Hey Ho,


    ich schreibe grade an einer App und brauche mal eure Hilfe.
    Google will mir irgendwie nicht so richtig helfen ^^


    Ich habe eine Activity. Von dieser Activity öffne ich eine weitere "Unterseite" also ein weiteres Layout.
    Jetzt habe ich es so gemacht, das wenn man den Hardware-Backbutton drückt, zurück zum Main-Layout kommt.
    Allerdings möchte ich bevor das Button Ereignis ausgeführt wird, das geprüft wird welches Layout grade aktiv ist.


    Hintergrund:
    Wenn man im Main-Layout ist und man auf dem BackButton drückt, das sich die Anwendung schließt, aber wenn man in einem anderen Layout ist, das man zurück zum MainLayout kommt.


    Hoffe ich habe mich konkret ausgedrückt.


    Gruß


    Lösung: Post 6

  • Wenn Du dein Layout mit je einer neuen Activity versiehst, dann kannst Du ja bequem über die dazugehörige Methode onBackPressed() gehen.
    Je nach Activity machst Du halt irgendwas anderes.


    Arbeitest Du hingegen mit Fragments, dann kannst Du beispielsweise an Hand des getBackStackEntryCount() deines FragmentManagers entscheiden, ob der User gerade in der Hauptansicht oder einer Unteransicht ist.


    Die erste interessante Frage ist, wie genau Du das Ganze bis jetzt implementiert hast.

    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Daraus folgt: je mehr Käse, desto weniger Käse.


    »Dies ist ein Forum. Schreibt Eure Fragen in das Forum, nicht per PN!«

  • Also ich habe es wie folgt gemacht:


    Bin in Eclipse einfach hingegangen und habe mir eine neue Layout .xml erstellt.


    per ButtonClick-Event komme ich auf die zweite "Seite"


    Ich gestehe das ich diesen Code von Google habe, aber ist nicht so das ich einfach Copy&Paste gemacht habe.
    Verstehe schon was der Code macht ^^


    Und den ZurückButton habe ich so modifiziert:


    Java
    // Zurück Button    
    @Override    
    public void onBackPressed() {    	
    setContentView(R.layout.activity_main);    
    }



    Ich habe mir gedacht das ich in der onBackPressed eine Abfrage mache von welchem Layout dieser Button geklickt wurde.
    Ist man auf einer Unterseite soll zur Startseite, wenn auf der Startseite soll die Anwendung geschlossen werden.

  • Habe jetzt die Lösung:


    Zuerst habe ich mit einen Boolean Wert erstellt, der als Standart true ist.
    Dieser Wert ist für die Überprüfung ob mein MainLayout geöffnet ist.


    Sobald ich auf eine anders Layout wechsel wird dieser Wert False.


    Dann einfach bei dem Zurückbutton überprüfen welcher Wert grade im Boolean steht und dann entweder zurück geht oder die anwendung schließen. ^^

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!