1. Nimm jetzt an unserem Ulefone Gemini - Gewinnspiel teil - Informationen zum Gemini findest Du hier!
  1. usc01, 11.06.2011 #1
    usc01

    usc01 Threadstarter Neuer Benutzer

    Hallo Zusammen,

    ich programmiere eine App in der ständig zwischen zwei Ansichten gewechselt wird. In der einen werden Eingaben gemacht, in der anderen werden die Berechnungsergebnisse die aus diesen Eingaben resultieren angezeigt.

    Ich habe dafür zwei Activitys erstellt. Auf der Ergebnissaktivity ist ein Button "Eingaben" der mittels
    startActivity(new Intent(this,eingaben.class ))
    die Eingaben-Activity aufruft.
    Analog ist auf der Berechnugsactivity ein Button "Berechnung" der mit
    startActivity(new Intent(this,berechnung.class )) die Berechnungs-Activity aufruft.

    Das klappt auch so weit. Ich frage mich nur, ist das der richtige (einzige?) Weg zwischen zwei Activity zu wechseln? So möchte ich z.B folgendes Phänomän vermeiden. Wenn ich 5 mal zwischen den beiden Activitys gewechselt bin kann ich 10 mal den Back-Button am Gerät drücken bis die App verlassen wird. Mein Wunsch wäre das dies nach st alle spätesten zwei mal passiert.

    Hoffe mich verständlich ausgedrückt zu haben.

    Gruss,
    Uwe

    PS.:

    Habe mich heute hier im Forum angmeldet. Möchte auf diesem Wege direkt alle Benutzer hier im Forum grüßen.
     
  2. the_alien, 11.06.2011 #2
    the_alien

    the_alien Android-Lexikon

    Du kannst die Activity auch einfach mit finish() beenden, dann landest du automatisch wieder bei der Eingaben Activity.
     
  3. usc01, 11.06.2011 #3
    usc01

    usc01 Threadstarter Neuer Benutzer

    Was ich noch gefunden habe ist

    onBackPressed();

    Das entspricht eigentlich genau dem was ich brauche.
     
  4. v Ralle v, 11.06.2011 #4
    v Ralle v

    v Ralle v Android-Lexikon

    Nein, nicht ganz. finish() ist sauberer. Ich glaube mich aber dran zu erinnern, dass onBackPressed() auch nur finish() wieder aufruft (und auch nicht mehr tut), finish() wäre somit ein klein wenig ressourcenschonender. Auch von der Logik ist finish() besser, du willst ja nicht den Tastendruck "simulieren", sondern die Activity beenden.
     
  5. Kranki, 12.06.2011 #5
    Kranki

    Kranki Ehrenmitglied

    Kann man nicht auch mit einem Flag im Intent die bestehende Activity wieder in den Vordergrund holen statt eine neue erzeugen zu lassen?
    Ich meine das mal gelesen zu haben.