1、介绍
通过实现一个猜词游戏介绍 ViewModel 和 LiveData
参考ViewModel、LiveData、原项目地址、项目地址
2、代码设置
viewModel.currentScrambledWord.observe(viewLifecycleOwner) {
binding.textViewUnscrambledWord.text = it
}
viewModel.currentWordCount.observe(viewLifecycleOwner){
binding.wordCount.text = getString(R.string.word_count, it, MAX_NO_OF_WORDS)
}
viewModel.scope.observe(viewLifecycleOwner){
binding.score.text = getString(R.string.score, it)
}
2、layout 设置
// Set the viewModel for data binding - this allows the bound layout access
// to all the data in the VieWModel
binding.viewModel = viewModel
binding.maxNoOfWords = MAX_NO_OF_WORDS
// Specify the fragment view as the lifecycle owner of the binding.
// This is used so that the binding can observe LiveData updates
binding.lifecycleOwner = viewLifecycleOwner