目前,我正在使用 data binding
对于两种情况:
views
在 fragment view model
订阅数据在布局中。 当我与
view binding
进行比较时,我认为这两种方法都很好(view binding
更好地访问 views
,data binding
来绑定(bind)数据),所以 MVVM 应该首选哪种模式?
我应该搬到
view binding
并处理 ViewModel-layout
仅 fragment 中的连接?
最佳答案
对于您的问题Should View Binding replace Data Binding
,答案是它取决于用例。
ViewBinding 只生成你的布局文件的 ViewBinding,所以你可以不使用 findViewById
来引用 View .
DataBinding 为您提供相同但具有额外功能,例如数据绑定(bind)表达式(将通用 Java 逻辑放入 XML)、整个 xml 的通用数据变量、注释等。
那么什么时候使用这些呢?
如果您只需要访问 Java 代码中的 View 而不需要任何复杂/重复的 View 逻辑(例如:根据一个数据变量更改多个 View 的可见性),那么您应该使用 ViewBinding
因为它更轻更快。
但如果您需要的不仅仅是访问绑定(bind)表达式、绑定(bind)适配器等 View (这是大型项目的一般要求)。您应该使用 DataBinding
因为它提供了更多的功能。
欲了解更多信息,请查看
https://developer.android.com/topic/libraries/view-binding#data-binding - AndroidDeveloper 的比较
https://proandroiddev.com/new-in-android-viewbindings-the-difference-from-databinding-library-bef5945baf5e - ProAndroidDev 的比较
关于android - View 绑定(bind)应该取代数据绑定(bind)吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60500840/