1. Hast Du Lust, bei uns mitzuarbeiten und das AH-Team zu verstärken? Alle Details zu dieser aktuellen Herausforderung findest Du hier.
  1. biker126, 17.11.2010 #1
    biker126

    biker126 Threadstarter Neuer Benutzer

    Hallöchen

    Ich hab vor ein paar Wochen mit Android programming angefangen und mir gedacht ich mach ein Spiel - und zwar den guten, alten Klassiker Tetris :) (nicht zuletzt auch weil alle Tetris Games aus dem Market die ich gefunden hab ne scheiss Steuerung haben :p).

    Das Game an sich läuft auch schon wunderbar, nur möcht ich jetzt n bisschen "Beigemüse" rundrum bauen. D.h. Menus mit denen man das Game konfigurieren, Highscore anschauen kann usw. Ich seh das auch gleichzeitig als gute Übung um mich etwas tiefer in die Thematik von Activities, Intent, task & Bundle einzuarbeiten...

    Was ich für den Anfang machen möchte ist folgendes Activity-Diagramm:
    [​IMG][​IMG]
    [​IMG]
    By biker126 at 2010-11-17

    Ich denk wie ich von A -> B -> C -> D komm weiss ich. Auch wie ich von B -> D komme (ist ein anderer Game Mode).

    Was ich nicht sicher weiss: Wie stell ich sicher, dass ich vom home screen immer in A lande? (wobei A meine root activity ist) Mit dem Attribut "clearTaskOnLaunch" in der activity beschreibung im Manifest?

    Was ich gar nicht weiss: Was muss ich machen, dass ich mit dem BACK button von D --> A komme und NICHT D --> C? (im Gegensatz zu C --> B --> A was möglich sein soll, wohl aber standart ist, denk ich).

    Was ich auch nicht sicher weiss: Wie kann ich in A feststellen, ob D bereits läuft (d.h. wohl noch im stack ist). Wenn ich das weiss, kann ich die View von A so konfigurieren, dass man den shortcut auswählen kann und den richtigen Intent schicken :)
    Weiter hab ich noch nicht rausgefunden was die Lebensdauer von so nem Bundle ist. Lebt so ein Bundle so lange wie mein task (d.h. der stack) vorhanden ist?

    Ich weiss, es sind n Haufen Fragen, aber vielleicht ist ja jemand so nett und nimmt sich die Zeit um mir n paar Tipps zu geben? :)

    Danke schonmal!
    Gruss biker
     
  2. HeroUser96, 18.11.2010 #2
    HeroUser96

    HeroUser96 Android-Hilfe.de Mitglied

    Ich bin mir nicht ganz sicher, ob das das ist, was du willst, aber um die Activity b zu "überspringen", kannst du einfach, nachdem du von B aus C mit einem Intent gestartet hast, in deiner Activity b die Mehtode finish() aufrufen.

    Dann wird die Activity beendet und du kommst zurück zu der anderen Activity, die noch läuft.
     
    biker126 gefällt das.
  3. funcoder, 18.11.2010 #3
    funcoder

    funcoder Erfahrener Benutzer

    Wenn ich dich richtig verstehe möchtest du den Back-Button anderst belegen bzw. die normale "Reihenfolge" verändern.

    Ich würde es so machen, dass du in der D-Activity die onDestroy Methode überschreibst:

    Code:
    @Override
        protected void onDestroy(){
            super.onDestroy(); 
        	// Activity Code -> startActivity(intent); 
        }
    Und dein gewöhnlichen Activity Aufruf startest.

    Du könntest aber auch bei den vorherigen Activitys das Intent-Flag("Intent.FLAG_ACTIVITY_NO_HISTORY") setzen, was deine Activity NICHT in die Activity-List mit aufnimmt.
     
    biker126 gefällt das.
  4. biker126, 18.11.2010 #4
    biker126

    biker126 Threadstarter Neuer Benutzer

    das sind 3 viel versprechende varianten! ich glaub, das mit dem flag setzen klingt fast am einfachsten. weil B und C (C manchmal sogar gar nicht) brauch ich nur um input daten vom user zusammen zu sammeln um sie dann D zu übergeben. D.h. es ist eigentlich ideal wenn die gar nicht erst in der history landen :)

    Danke euch!

    Jetzt muss ich "nur" noch rausfinden wie ich feststellen kann ob eine activity schon "läuft" (und einfach nicht sichtbar ist im moment weil ja eine andere angezeigt wird) bzw. schonmal gestartet wurde und wie ich zustandsdaten von so ner activity abfragen kann... ;-)
     
Die Seite wird geladen...
Ähnliche Themen Forum Datum
[ERLEDIGT] Bitmap von Activity an Activity übergben Android App Entwicklung 03.09.2017
[OFFEN] Activity als Dialog - RecyclerView funktioniert nicht mehr Android App Entwicklung 14.08.2017
[OFFEN] Problem mit meiner Login App Android App Entwicklung 10.06.2017
[ERLEDIGT] Tipps für AsyncTask Klasse Android App Entwicklung 18.05.2017
[GELÖST] Nach AS Update Fehler Error running app: Default Activity not found Android App Entwicklung 16.05.2017
[GELÖST] Übergabe an zweite Activity Android App Entwicklung 11.05.2017
[ERLEDIGT] Problem mit Async Task und auszuführender Aufgabe Android App Entwicklung 02.05.2017
[ERLEDIGT] Problem beim Starten einer neuen Activity Android App Entwicklung 21.03.2017
Intent mit Daten (putExtra) zu anderer Activity Android App Entwicklung 14.02.2017
Bestätigungsdialog in der Activity Android App Entwicklung 19.12.2016
Du betrachtest das Thema "Tipps / Erklärung für activity stack, tasks & bundles" im Forum "Android App Entwicklung",