Sobes.tech
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.