class AnimalViewModel(val animal: Animal) {
val info = ObservableField("${animal.name} 叫了 ${animal.shoutCount}声..")
fun shout() {
animal.shoutCount++
info.set("${animal.name} 叫了 ${animal.shoutCount}声..")
}
}
2.4 绑定
class AnimalActivity : AppCompatActivity() {
lateinit var mBinding: AnimalActivityBinding
lateinit var mViewMode: AnimalViewModel
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
mBinding = DataBindingUtil.setContentView(this, R.layout.animal_activity)
//model
val animal = Animal("dog", 0)
/ViewModel
mViewMode = AnimalViewModel(animal)
binding
mBinding.vm = mViewMode
}
}