Junior — Middle
Hogyan lehet adatokat tárolni a ViewModelban későbbi felhasználásra?
sobes.tech MI
Válasz az MI-től
Az adatok mentése a ViewModel belsejében és újrafelhasználása érdekében általában a ViewModel osztály mezőit használják, amelyek a kapcsolódó UI-komponens életciklusa során megőrzik az állapotot.
Ha az adatok mentése szükséges a folyamat megsemmisítésekor (például képernyőforgatás vagy az alkalmazás bezárása esetén), akkor használhatja a SavedStateHandle-t, egy speciális objektumot, amely lehetővé teszi az állapot mentését és helyreállítását.
A SavedStateHandle használatának példája:
class MyViewModel(private val state: SavedStateHandle) : ViewModel() {
var userName: String?
get() = state.get<String>("userName")
set(value) = state.set("userName", value)
}
Így az adatok automatikusan mentésre és helyreállításra kerülnek, javítva a felhasználói élményt és megelőzve az információk elvesztését.