- Créez une application avec une mise en page (layout) qui contient un compteur
TextView, un bouton pour incrémenter le compteur et unEditText. Voir la capture d'écran ci-dessous à titre d'exemple. Vous n'avez pas à dupliquer précisément la mise en page (layout). - Ajoutez un gestionnaire de clic pour le bouton qui incrémente le compteur.
- Exécutez l'application et incrémentez le compteur. Entrez du texte dans
EditText. - Faites pivoter l'appareil. Notez que le compteur est réinitialisé, mais pas
EditText. - Implémentez
onSaveInstanceState()pour enregistrer l'état actuel de l'application. - Mettez à jour
onCreate()pour restaurer l'état de l'application. - Assurez-vous que lorsque vous faites pivoter le périphérique, l'état de l'application est préservé.
Si vous exécutez l'application de travail à faire avant d'implémenter onSaveInstanceState(), que se passe-t-il si vous faites pivoter le périphérique? Choisissez-en un:
- L'
EditTextne contient plus le texte que vous avez entré, mais le compteur est conservé. - Le compteur est réinitialisé à 0 et l'
EditTextne contient plus le texte que vous avez entré. - Le compteur est réinitialisé à 0, mais le contenu de l'
EditTextest préservé. - Le compteur et le contenu de
EditTextsont préservés.
Quelles méthodes de cycle de vie d'activité sont appelées lorsqu'un changement de configuration de périphérique (tel qu'une rotation) se produit? Choisissez-en un:
- Android ferme immédiatement votre activité en appelant
onStop(). Votre code doit redémarrer l'activité. - Android arrête votre activité en appelant
onPause(),onStop()etonDestroy(). Votre code doit redémarrer l'activité. - Android arrête votre activité en appelant
onPause(),onStop()etonDestroy(), puis redémarre l'opération en appelantonCreate(),onStart()etonResume(). - Android appelle immédiatement
onResume().
Lorsque dans le cycle de vie de l'activité, onSaveInstanceState() est appelé? Choisissez-en un:
-
onSaveInstanceState()est appelée avant la méthodeonStop(). -
onSaveInstanceState()est appelée avant la méthodeonResume(). -
onSaveInstanceState()est appelée avant la méthodeonCreate(). -
onSaveInstanceState()est appelée avant la méthodeonDestroy().
Quelles méthodes de cycle de vie d'Activité sont les meilleures à utiliser pour enregistrer des données avant la fin ou la destruction de l'activité? Choisissez-en un:
-
onPause()ouonStop() -
onResume()ouonCreate() -
onDestroy() -
onStart()ouonRestart()
Vérifiez que l'application dispose des éléments suivants:
- Il affiche un compteur, un bouton pour incrémenter ce compteur et un
EditText. - Un clic sur le bouton incrémente le compteur de 1.
- Lors de la rotation du périphérique, les états counter et
EditTextsont conservés. - L'implémentation de
MainActivity.javautilise la méthodeonSaveInstanceState()pour stocker la valeur du compteur. - L'implémentation de
onCreate()teste l'existence dubundleoutState. Si cetBundleexiste, la valeur du compteur est restaurée et enregistrée dansTextView.
