Junior — Middle
Quelles méthodes garantissent la conservation de l'état des données lors de la recréation d'une Activity dans Android?
sobes.tech IA
Réponse de l'IA
Pour conserver l'état des données lors de la recréation d'une Activity en Android, on utilise généralement des méthodes de sauvegarde et de restauration de l'état via Bundle.
Approches principales:
- Redéfinir la méthode
onSaveInstanceState(Bundle outState)et sauvegarder les données nécessaires dansoutState. - Dans la méthode
onCreate(Bundle savedInstanceState)ouonRestoreInstanceState(Bundle savedInstanceState), restaurer les données depuissavedInstanceState.
Exemple:
@Override
protected void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putString("key", someValue);
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (savedInstanceState != null) {
someValue = savedInstanceState.getString("key");
}
}
Il est également possible d'utiliser ViewModel pour stocker des données qui survivent à la recréation de l'Activity sans avoir besoin de sauvegarder manuellement dans un Bundle.