Sobes.tech
Junior — Middle

Aká funkcia vo ViewModel spúšťa aktualizáciu zobrazenia v používateľskom rozhraní?

sobes.tech AI

Odpoveď od AI

V ViewModel sa zvyčajne používa objekt LiveData alebo StateFlow na aktualizáciu používateľského rozhrania. Na spustenie aktualizácie zobrazenia ViewModel zmení hodnotu v LiveData pomocou metódy setValue() (ak je na hlavnom vlákne) alebo postValue() (ak z pozadia).

Príklad s LiveData:

private val _data = MutableLiveData<String>()
val data: LiveData<String> = _data

fun updateData(newValue: String) {
    _data.value = newValue // iniciuje aktualizáciu UI, ak je View prihlásená na data
}

Týmto spôsobom funkcia, ktorá mení hodnotu LiveData alebo StateFlow v ViewModel, iniciuje aktualizáciu UI, pretože View (Activity/Fragment) sleduje tieto údaje a reaguje na zmeny.