2011-01-10 6 views
0

zu popping habe ich folgendes möchte ich erreichen: Aandroid: Aktivitäten Umzug durch, ohne sie

Aktivität -> Aktivität B

Aktivität B -> Aktivität A

Auf dem Papier klingt es wie die Gleiche wie nur den Zurück-Knopf drücken. Das Problem ist, ich möchte nicht, dass Aktivität B aufgerufen wird.

Ich brauche etwas in der Art von moveTaskToBackground, aber für eine einzelne Aktivität. Auf diese Weise kann ich, wenn ich von A wieder zurückgehe, wieder aufnehmen.

Um Ihnen einen Kontext zu geben, ist Aktivität A eine Liste von Elementen. Aktivität B zeigt Informationen über das Element an und gibt einen daran angehängten Titel wieder. Wenn ich von B nach A zurückkehre, möchte ich, dass dieser Song weiterspielt. Wenn die Person die gleiche Option in A antrifft, wird sie einfach fortgesetzt. Ansonsten töte diese Aktivität und starte eine neue mit den neuen Details und spiele den neuen Song.

Sehr geschätzt.

Antwort

1

Sie müssen sich in ActivityGroup und LocalActivityManager suchen. TabActivity (wie in anderen Antworten vorgeschlagen) erweitert ActivityGroup.

Hier ist ein kleines Beispiel für den Einstieg:

Mit dieser Aktivität A zu starten:

LocalActivityManager manager = getLocalActivityManager(); 

//A_ID == 1 
Window activityWindow = manager.startActivity(A_ID, intent_activityA); 
setContentView(activityWindow.getDecorView()); 

oder diese Aktivität B zu starten:

//B_ID == 2 
Window activityWindow = manager.startActivity(B_ID, intent_activityB); 
setContentView(activityWindow.getDecorView()); 

Aktivitäten werden zwischengespeichert und den angegebenen IDs zugeordnet. Wenn Sie startActivity mehrmals mit derselben ID aufrufen, wird die zwischengespeicherte Aktivität tatsächlich verwendet (nicht immer, hängt von den von Ihnen verwendeten Absichten ab). Sie können jede Aktivität aus dem Cache entfernen, wenn Sie möchten. Schauen Sie in LocalActivityManager für weitere Details.

+0

Danke inazaruk, das ist, was ich gesucht habe. – Alex

Verwandte Themen