Junior — Middle
Чӣ гуна метавон ба View дар бораи тағиротҳои маълумот дар меъмории MVVM хабар дод?
sobes.tech AI
Ҷавоб аз AI
Дар архітэктуры MVVM звычайна выкарыстоўваецца механізм назірання за зменамі ў ViewModel для паведамлення View пра змены дадзеных. У Android гэта часта рэалізуецца з дапамогай:
- LiveData — аб'екта, які захоўвае дадзеныя і паведамляе падпісчыкам (View) пра змены.
- StateFlow / Flow з Kotlin Coroutines — рэактыўных патокаў дадзеных, якія View можа назіраць.
Прыклад з LiveData:
class MyViewModel : ViewModel() {
private val _data = MutableLiveData<String>()
val data: LiveData<String> = _data
fun updateData(newValue: String) {
_data.value = newValue
}
}
// У Activity або Fragment
viewModel.data.observe(viewLifecycleOwner) { updatedValue ->
textView.text = updatedValue
}
Такім чынам, калі дадзеныя ў ViewModel змяняюцца, View аўтаматычна атрымлівае паведамленне і абнаўляе UI.