Junior — Middle
Kako se uspostavlja veza i razmena podataka između korisničkog interfejsa i poslovne logike u arhitekturi MVVM?
sobes.tech АИ
Одговор од АИ
В архитектуре MVVM (Model-View-ViewModel) связь между пользовательским интерфейсом (View) и бизнес-логикой (ViewModel) осуществляется через механизм двунаправленного связывания данных (data binding). Это значит, что изменения в модели данных автоматически отражаются в интерфейсе, а действия пользователя обновляют данные в ViewModel.
В Android для этого часто используют LiveData или Observable объекты, которые View подписывается и реагирует на изменения. ViewModel содержит логику и данные, а View — только отображение и обработку пользовательских событий.
Пример с LiveData:
class MyViewModel : ViewModel() {
val userName = MutableLiveData<String>()
}
// В Activity или Fragment
viewModel.userName.observe(this) { name ->
textView.text = name
}
// При изменении userName в ViewModel, текст в textView обновится автоматически