2010-12-01 32 views
0

Lorsque les activités sont ouvertes par l'utilisateur, elles sont empilées dans la pile de vues. et lorsque l'utilisateur termine une activité par n'importe quel moyen, il est sorti de la pile de vues.Fin (ou accès) à une activité spécifique dans Android

Maintenant, j'ai une situation où l'utilisateur a ouvert l'écran d'accueil de l'application, et a successivement ouvert plusieurs activités, en haut de l'écran d'accueil. Dans chaque activité, un contrôle permet à l'utilisateur de voir à nouveau l'écran d'accueil.

Comme je peux penser, il peut y avoir deux approches pour obtenir ceci:

  1. Sur la presse de ce contrôle, pop l'écran d'accueil à partir du bas de la pile de vue et le pousser sur le dessus de celui-ci .
  2. En appuyant sur la commande, commencez à faire apparaître chacun des écrans en cours jusqu'à ce que l'écran d'accueil devienne l'écran actuel.

Je sais qu'il y a un moyen dans Android de faire au moins un de ceci, ou quelque chose comme ça. Je ne me rappelle plus de quoi il s'agissait. S'il vous plaît aidez-moi à choisir la meilleure approche, et laissez-moi savoir le chemin (le code, en particulier) pour le faire.

Merci beaucoup :)

(S'il vous plaît modifier le titre/texte s'il ne convient pas)

Répondre

3

essayer quelque chose comme ça

Intent i = new Intent(); 
    i.putExtra(EXTRA_KEY_ARTIST, id); 
    i.setClass(this, ArtistActivity.class); 
    i.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP); 
    startActivity(i); 

C'est tout lorsque vous définissez le la FLAG_ACTIVITY_SINGLE_TOP propriété il ne commencera pas une nouvelle activité mais montrera votre activité intially créée si elle n'est pas encore détruite,

Mais si votre activité est l'activité de départ alors vous pouvez le mettre comme ceci

<activity 
    android:name=".ArtistActivity" 
    android:label="Artist" 
    android:launchMode="singleTop"> 
</activity> 
+0

Je pourrais comprendre clairement le code, mais je n'ai pas pu obtenir ce que la partie XML signifierait dans le manifeste, et le scénario quand cela sera utile. Merci beaucoup au passage! :-) –

+0

Si votre activité est la première activité, alors il n'y a pas d'autre endroit où vous pouvez définir ce singletop en utilisant le code mais en utilisant android manifest.xml où vous devez utiliser ce xml – ingsaurabh

+0

Salut, ingsaurabh Je veux savoir ce qui se passera quand J'appuie sur la touche retour après que l'activité soit arrivée au sommet .. :) –