Junior — Middle
Comment peut-on sauvegarder des données dans le ViewModel pour une utilisation ultérieure?
sobes.tech IA
Réponse de l'IA
Pour stocker des données à l'intérieur du ViewModel et les réutiliser, on utilise généralement des champs de la classe ViewModel, qui conservent l'état pendant le cycle de vie du composant UI associé.
Si vous devez sauvegarder des données lors de la destruction du processus (par exemple, lors de la rotation de l'écran ou de la fermeture de l'application), vous pouvez utiliser SavedStateHandle, un objet spécial qui permet de sauvegarder et de restaurer l'état.
Exemple d'utilisation de SavedStateHandle :
class MyViewModel(private val state: SavedStateHandle) : ViewModel() {
var userName: String?
get() = state.get<String>("userName")
set(value) = state.set("userName", value)
}
Ainsi, les données sont sauvegardées et restaurées automatiquement, ce qui améliore l'expérience utilisateur et évite la perte d'informations.