Maison > Problème commun > méthodes du cycle de vie des activités

méthodes du cycle de vie des activités

(*-*)浩
Libérer: 2019-06-05 11:38:03
original
16617 Les gens l'ont consulté

Récemment, j'ai examiné le cycle de vie de l'activité, lu des livres et des documents officiels pertinents et j'ai beaucoup gagné. Ma compréhension antérieure s'est grandement améliorée et j'aimerais la partager avec vous ici.

méthodes du cycle de vie des activités

L'activité est équivalente à un servlet. Notre activité est dans ce conteneur. Tous les processus tels que la création d'instances, l'initialisation et la destruction d'instances sont appelés par le conteneur. le soi-disant mécanisme "Ne m'appelle pas, je t'appellerai". (Apprentissage recommandé : Tutoriel vidéo Java)

Jetons un coup d'œil à cet organigramme classique du cycle de vie :

méthodes du cycle de vie des activités

onCreate() :
Cette méthode sera exécutée automatiquement lors de la création de l'activité. Cette méthode effectue certaines actions d'initialisation, telles que la création de vues, la définition de données dans la liste, etc. Cette méthode fournit une variable de type Bundle, qui contient les informations d'état précédentes de l'activité, à condition que ces informations aient été enregistrées auparavant. Une fois cette méthode exécutée, la méthode onStart() est exécutée ; si la méthode finish() est ajoutée à la méthode onCreate, onCreate exécutera ensuite la méthode onDestroy

onRestart() :
Lorsque l'activité sort de l'état onStop, la méthode onRestart sera utilisée. Cette méthode a priorité sur onStart qui est réexécuté après la fin de onRestart. Si vous ajoutez une instruction finish() à la méthode onRestart(), onStart et les méthodes d'état suivantes continueront à s'exécuter jusqu'à ce que onDestroy soit terminé

onStart() :
Lorsque l'activité is onStart sera appelé lorsque l'utilisateur est visible lorsque l'activité est affichée au premier plan, onResume sera exécuté lorsque l'activité est masquée (arrêtée) avant d'être affichée au premier plan, onStop() sera exécuté par exemple. , la méthode finish() est utilisée dans la méthode onStart. Si c'est le cas, onStop->onDestroy sera exécuté directement après onStart().

onResume() :
OnResume est appelé lorsque l'activité commence à interagir avec l'utilisateur et que l'activité se trouve en haut de la pile d'activités pour les opérations de l'utilisateur. Après certaines opérations, ce qui est exécuté après l'exécution de la méthode est onPause()

onPause() :
Lorsqu'une activité s'exécute vers la méthode onResume, si l'activité doit être détruit Cette méthode sera appelée si vous souhaitez faire une pause ou arrêter. Cette méthode peut être suivie par onResume ou onStop. Si une nouvelle activité-B est ouverte dans cette activité-A qui ne couvre pas complètement cette activité-A, alors l'activité-A sera dans l'état onPause lorsque l'activité-B se terminera. Activity-A exécutera directement onResume (à condition que la méthode onPause ait été exécutée, sinon elle attendra que la méthode onPause soit exécutée avant d'exécuter la méthode onResume, il n'est donc pas recommandé d'effectuer des opérations gourmandes en CPU dans cette méthode). Si l'activité-A doit être quittée, onStop sera ensuite exécuté. onPause() est utilisé pour soumettre des données persistantes non enregistrées qui ont changé et pour arrêter les animations et autres événements qui consomment plus de CPU (tels que les récepteurs de diffusion, les capteurs (tels que le GPS) ou les ressources qui consomment de l'énergie). mises à jour. OK, exécutez la nouvelle activité

onStop():
Lorsque cette activité est complètement invisible, la méthode onStop sera appelée, car une autre activité appellera onResume et l'écrasera. activité . Les trois situations suivantes amèneront cette activité à appeler la méthode onStop(). La première est qu'une nouvelle activité est exécutée, la seconde est qu'une activité existante passe au premier plan et la troisième est que l'activité est détruite. Si l'activité est rappelée par l'utilisateur, la méthode onRestart sera appelée ; si l'activité doit être détruite, la méthode onDestroy sera appelée

onDestroy() :
Ce sera appelé avant que l'activité ne soit détruite Méthode, par exemple, si ce qui suit se produit : l'activité appelle la méthode finish() pour terminer l'activité, ou le système détruit temporairement l'activité pour économiser de l'espace, ces deux situations peuvent être jugées par le Méthode isFinishing()

Plus Pour les articles techniques liés à Java, veuillez visiter la colonne Tutoriel de développement Java pour apprendre !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal