Drapeau de l'Activité Clair détruit l'activité cible et que de la créer

Je suis de regarder un comportement d'Intention.FLAG_ACTIVITY_CLEAR_TOP.

Par exemple, j'ai trois activités
A,B et C
Maintenant Flow -> B -> C

Maintenant, quand je commence Un de C avec ce drapeau avec le code suivant.

 Intent intent_to_a=new Intent(C.this,A.class);
                intent_to_home.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                startActivity(intent_to_a);

Autant que je sache, l'Intention.FLAG_ACTIVITY_CLEAR_TOP devrait supprimer B et devrait reprendre du Une .Il a également fait la même chose mais d'une manière étrange.
Il supprime B , que supprime Une que crée A.
La méthode onDestroy de A est aussi appelé.
Quelqu'un peut me dire c'est bon ou pas?
Si je ne veux pas d'elle pour se détruire que dois-je faire?

regarder dans FLAG_ACTIVITY_REORDER_TO_FRONT, ce qui est plus proche de ce que vous voulez developer.android.com/reference/android/content/Intent.html
ouais,j'ai vu aussi,mais je veux aussi que B ait détruit,FLAG_ACTIVITY_REORDER_TO_FRONT seulement mettre Un en haut de ActivityStack sans enlever B.
peut-être que vous pourriez utiliser LocalBroadCastManager pour envoyer un séparer l'intention de B pour terminer elle-même et ensuite utiliser Reorder_to_front? Je pourrais donner le code source si c'est quelque chose que vous êtes intéressé à
tu veux dire que nous pourrions utiliser un BroadcastReceiver à tout juste d'en terminer B. Est-ce donc?
correct, mais il est en fait très facile à faire au lieu d'avoir le BroadcastReceiver comme une classe distincte, vous pouvez l'avoir dans l'activité et la dynamique de la déclarer

OriginalL'auteur kaushal trivedi | 2013-07-06