Sobes.tech
Junior — Middle

Hoe wordt het gebruik van ViewModel in Jetpack geïmplementeerd voor het beheren van de status van de gebruikersinterface?

sobes.tech AI

Antwoord van AI

ViewModel in Jetpack wordt gebruikt om de UI-status op te slaan en te beheren, waarbij gegevens behouden blijven tijdens configuratiewijzigingen (bijvoorbeeld schermrotatie). ViewModel scheidt de UI-logica van Activity of Fragment, wat testen en onderhoud vereenvoudigt.

Voorbeeld van gebruik:

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

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

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

Zo slaat ViewModel gegevens op die het hercreëren van de UI overleven en biedt ze via LiveData voor een reactieve interface-update.