Sobes.tech
Junior — Middle

Jetpackda ViewModeldan foydalanish foydalanuvchi interfeysining holatini boshqarish uchun qanday amalga oshiriladi?

sobes.tech AI

AIdan javob

Jetpackdagi ViewModel UI holatini saqlash va boshqarish uchun ishlatiladi, konfiguratsiya o'zgarishlari (masalan, ekran burilishi) davomida ma'lumotlarni saqlab qoladi. ViewModel UI mantiqini Activity yoki Fragmentdan ajratadi, bu esa test qilish va qo'llab-quvvatlashni osonlashtiradi.

Foydalanish misoli:

class MyViewModel : ViewModel() {
    private val _text = MutableLiveData<String>()
    val text: LiveData<String> = _text

    fun updateText(newText: String) {
        _text.value = newText
    }
}

// Activity yoki Fragmentda
val viewModel = ViewModelProvider(this).get(MyViewModel::class.java)
viewModel.text.observe(this) { updatedText ->
    textView.text = updatedText
}

Shunday qilib, ViewModel UIni qayta yaratishdan o'tgan ma'lumotlarni saqlaydi va ularni LiveData orqali reaktiv tarzda interfeysni yangilash uchun taqdim etadi.