在android

时间:2018-06-04 13:14:50

标签: android mvvm realm android-databinding

我正在尝试使用Android的架构组件,即data bindingRealm数据库,使用MVVM模式。

在探索了数据绑定和MVVM之后,我遇到了几种将模型与UI绑定的方法。

  1. 在模型中声明Observable原语字段并直接将它们绑定到android xml文件。

  2. 保持原始数据类型的模型,并在View模型类中声明Observable字段

  3. 现在,由于领域不支持Observable字段,左边的选项是使用Observable

    我已经将这篇文章用于realm with data binding ,但这篇文章非常陈旧。

    所以我的问题是

    1. 什么是在android中实现数据绑定,将模型直接绑定到android UI或在视图模型中声明可观察变量并将其映射到模型?

    2. 将域与数据绑定结合使用的最佳做法

    3. 我的问题在领域和数据绑定的背景下非常具体,因此它不是一个普遍的问题。

1 个答案:

答案 0 :(得分:0)

我只回答第一个问题,因为我暂时没有使用Realm。

正如您所说,您不能在Realm中使用的模型中使用Observable字段,您也不应该这样做。模型要保持简单。 ViewModel正是Observable所属的地方。它们应该只与视图绑定。

考虑使用新的LiveData类而不是新架构组件中的Observables和ViewModel。它们使事情变得更加容易,现在在数据绑定中得到支持:

LiveData Overview

LiveData with Data Binding