Sobes.tech
Junior — Middle

Android колдонмолорунда ViewModel ичинде маалыматтарды сактоо кандай жүргүзүлөт?

sobes.tech AI

AIден жооп

Androidда ViewModel, конфигурация өзгөрүүлөрүнөн (мисалы, экранды буруу) кийин да калуучу маалыматтарды сактайт. Мын үчүн, ViewModel өзүнүн талааларында абалын сактайт, жана Activity же Fragment кайра түзүлгөндө, маалыматтар жеткиликтүү бойдон калат.

Эгер толук колдонмону жок кылуу учурунда маалыматтарды сактоо керек болсо, SavedStateHandle колдонулат — бул абалды сактоо жана калыбына келтирүү мүмкүнчүлүгүн берген атайын объект.

SavedStateHandle менен ViewModel колдонуу мисалы:

class MyViewModel(private val state: SavedStateHandle) : ViewModel() {
    var userName: String?
        get() = state["userName"]
        set(value) {
            state["userName"] = value
        }
}

Мындайча айтканда, ViewModel ичиндеги маалыматтар эс тутумда сакталат, жана керек болсо — процесстин жок кылынгандан кийин калыбына келтирүү үчүн SavedStateHandle колдонулат.