Cycle de vie de L'Activité Android après avoir appuyé sur le bouton Retour

je suis un peu confus entre le cycle de vie de deux activités.

supposons que j'ai L'activité A et L'activité B.

B est appelée à Partir d'Un je.e A ----> B.

actuellement B sur l'écran et j'ai appuyé sur bouton de retour. Ici je veux savoir: - y a-t-il encore de la mémoire disponible pour B(Active) ou est flushée (Inactive).

22
demandé sur SMR 2014-02-25 14:43:41

7 réponses

supposons qu'il y ait une activité A, à partir de laquelle vous lancez l'activité B. Si, pendant que vous êtes à l'activité B, vous appuyez sur le bouton arrière, vous retirez l'activité B de la pile et B ne sera plus dans la pile d'activités.

Chaque fois que vous poussez une activité à la pile, onCreate est appelé, et si vous appuyez sur le bouton de retour, onDestroy est appelée, ce qui signifie que l'activité est évacuée.

stack

s'il vous Plaît visitez mon blog pour plus d' information: http://upadhyayjiteshandroid.blogspot.in/2013/02/android-lifecycle.html

activity lifecycle visitez pour plus d'

http://developer.android.com/guide/components/tasks-and-back-stack.html

http://developer.android.com/training/basics/activity-lifecycle/starting.html

51
répondu Jitesh Upadhyay 2016-05-15 14:55:33

les méthodes de rappel d'activité suivantes sont appelées, après avoir appuyé sur le bouton de retour.

onPause()
onStop()
onDestroy()

L'activité est détruite.

et il recrée une fois lancé à nouveau. Ce sont les méthodes de callback quand il se lance à nouveau.

onCreate()
onStart()
onResume()
10
répondu Annada 2016-11-02 18:01:13

onDestroy la méthode est appelée après back press. Ensuite, l'activité sera retirée de la pile de retour de L'activité.

à Partir de docs:

si une activité est interrompue ou arrêtée, le système baisse de l'activité de la mémoire soit en lui demandant de terminer, soit simplement en tuant son processus. Quand il est de nouveau affiché à l'utilisateur, il doit être redémarré et restauré à son état précédent.

onDestroy() à partir de docs:

Le dernier appel que vous recevez avant votre activité est détruite. Cela peut se produire soit parce que l'activité est terminée (quelqu'un appelé finish() sur elle, ou parce que le système est temporairement détruire cette instance de l'activité pour économiser de l'espace. Vous pouvez faire la distinction entre ces deux scénarios avec l' isFinishing() méthode.

enter image description here

6
répondu SMR 2018-02-05 06:24:47

L'activité B sera détruite et ne restera plus en mémoire.

pour de plus amples renseignements, veuillez visiter le documentation officielle pour android et jetez un coup d'oeil à la figure du cycle de vie de l'activité.

une fois que vous appuyez sur la touche back, la méthode onDestroy() de l'activité sera appelée et l'activité sera effacée de la mémoire. Vous devrez alors redémarrer l'activité en appelant la méthode startActivity() qui à son tour appellera son onCreate() de la Méthode.

2
répondu Rakesh 2014-02-25 10:54:36

voici un lien vers l'application que vous donnez une bonne idée sur le cycle de vie de L'Activité Android

Cliquez ici pour télécharger l'application

0
répondu 1011 2014-02-25 10:59:16

je suggère de renvoyer le lien suivant pour le cycle de vie de l'activité

http://stackoverflow.com/a/8516056/3110609

et suivre le lien pour le mode de lancement de l'activité.

www.intridea.com/blog/2011/6/16/android-understanding-activity-launchmode
0
répondu Harshal Benake 2014-02-25 11:01:50

après avoir appuyé sur le bouton arrière, L'activité B sera B détruite. Vous voyez, Android gère des activités comme un Pile(une explication de la pile). Chaque fois que vous commencez une activité, il pousse dans la pile D'activités. Donc, lorsque L'activité A appelle L'activité B, L'activité B est maintenant au sommet de l'activité B, et lorsque vous appuyez sur le bouton arrière, il fait aussi un pop dans la pile D'activités. Donc, dans le concept, L'activité B a disparu. Presser un bouton D'accueil est différent de presser en arrière, il marque une pause L'activité, donc il mange encore un peu de la mémoire du téléphone.

Ici est une bonne explication de la façon dont Android gère les activités.

0
répondu steven0529 2014-02-25 11:03:16