Sobes.tech
Junior — Middle

Cum se implementează utilizarea ViewModel în Jetpack pentru gestionarea stării interfeței utilizatorului?

sobes.tech AI

Răspuns de la AI

ViewModel în Jetpack este utilizat pentru a stoca și gestiona starea UI, păstrând datele în timpul modificărilor de configurație (de exemplu, rotirea ecranului). ViewModel separă logica UI de Activity sau Fragment, ceea ce facilitează testarea și întreținerea.

Exemplu de utilizare:

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

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

// În Activity sau Fragment
val viewModel = ViewModelProvider(this).get(MyViewModel::class.java)
viewModel.text.observe(this) { updatedText ->
    textView.text = updatedText
}

Astfel, ViewModel stochează datele care supraviețuiesc recreării UI și le furnizează prin LiveData pentru actualizarea reactivă a interfeței.