【发布时间】:2021-10-14 09:21:58
【问题描述】:
现在我正在学习一个教程,我正在开发一个简单的游戏应用程序,试图理解和使用 MVVM 应用程序架构。在我的 ViewModel 类中,我有一个包含玩家得分的字段。
分数变量声明如下:
private val _score = MutableLiveData<Int>()
val score: LiveData<Int>
get() = _score
现在,在我的 UI Controller 类中,我观察到这样的分数:
viewModel.score.observe(this, Observer { newScore ->
binding.scoreText.text = newScore.toString()
})
那么,我的问题是为什么我需要第二个分数声明?我不能有一个
val score = MutableLiveData<Int>()
并像上面一样观察它?我试过了,效果很好。
【问题讨论】: