2010-06-23 7 views
4

Voici mes deux scénarios.Comment manipuler la pile d'activité Android?

1 - L'utilisateur ouvre l'application pour la première fois depuis l'écran d'accueil Android L'utilisateur est présenté avec « première fois » écran (soutenu par la première activité de temps, permet de l'appeler A) utilisateur frappe bouton retour utilisateur est renvoyé à l'écran d'accueil Android

2 - l'utilisateur ouvre l'application pour la deuxième fois utilisateur est présenté avec l'écran principal de liste de l'application (soutenue par une activité de la liste, nous allons l'appeler B) bouton retour touche utilisateur utilisateur est retourné à l'écran d'accueil android

Je suis déjà au courant de nombreux moyens de détecter si c'est la première fois que vous ouvrez l'application ou non.

Le problème est que le bouton de retour revient à l'écran d'accueil plutôt qu'une activité de routage qui décide à quel écran transférer.

Actuellement Mon application a une activité de décider où la route (Appelons il R) le problème est, ma pile soit ressemble R -> A ou R -> B

Je veux A ou B pour remplacer R sur la pile quand ils ouvrent, et si l'utilisateur renvoie, puis ils vont à l'écran d'accueil Android, pas de retour à R.

Avoir un collaborateur qui définit la vue pour A et B est également pas vraiment réalisable comme B étend androïdes implémentation concrète d'une activité de liste pour obtenir la plupart de ses fonctionnalités.

Des idées?

Répondre

4

Je veux A ou B pour remplacer R sur la pile quand ils ouvrent, et si l'utilisateur retour coups, puis ils vont à l'écran d'accueil Android, pas de retour à R.

Appelez finish() dans R après avoir appelé startActivity() pour déclencher l'ouverture de A ou B.

Questions connexes