web-dev-qa-db-fra.com

quelle est la différence entre les méthodes de cycle de vie onCreate () et onCreateView () dans Fragment?

Je ne sais pas quand utiliser onCreate() ou onCreateView().

J'ai utilisé les méthodes de cycle de vie onCreate() et onCreateView(). Je pense onCreate() pour Activité et onCreateView() pour Fragment. Mais je ne suis pas sûr. Puis-je utiliser la méthode onCreate() LifeCycle dans Fragment? J'espère que quelqu'un peut m'aider!

14
Cabezas

onCreate est appelé lors de la création initiale du fragment. Vous faites ici vos initialisations non graphiques. Il se termine avant même que la disposition ne soit gonflée et que le fragment ne soit visible.

onCreateView est appelé pour gonfler la présentation du fragment, c’est-à-dire que l’initialisation graphique a lieu ici. Il est toujours appelé parfois après la méthode onCreate .

31
M D

Explication du cycle de vie de l'activité - http://developer.Android.com/reference/Android/app/Activity.html

Le cycle de vie des fragments a été expliqué - http://developer.Android.com/guide/components/fragments.html#Creating

Diagramme détaillé du cycle de vie - https://github.com/xxv/Android-lifecycle

2
fada21

À partir de documents:

onCreate  

Appelé au début de l'activité. 

C’est là que la plupart des initialisations devraient aller: appeler setContentView (int) pour gonfler l’UI de l’activité, en utilisant findViewById (int) pour interagir par programme avec des widgets dans l’UI, en appelant managedQuery (Android.net.Uri, String [], String, String [ ], String) pour récupérer les curseurs des données affichées, etc. 

Vous pouvez appeler finish () depuis cette fonction. Dans ce cas, onDestroy () sera immédiatement appelé sans que le reste du cycle de vie de l'activité (onStart (), onResume (), onPause (), etc.) ne soit exécuté. 

Les classes dérivées doivent faire appel à l'implémentation de cette méthode par la super classe. S'ils ne le font pas, une exception sera levée.

Lien vers la documentation de onCreate

onCreateView

Appelé pour que le fragment instancie sa vue d'interface utilisateur. Ceci est facultatif et les fragments non graphiques peuvent renvoyer null (implémentation par défaut). Cela sera appelé entre onCreate (Bundle) et onActivityCreated (Bundle). 

Si vous retournez une vue à partir de là, vous serez appelé ultérieurement par onDestroyView () lors de la publication de la vue.

Lien vers la documentation de onCreateView

0
Don Chakkappan