目前,我在两种情况下使用数据绑定
:
- 在片段中访问
视图
- 在布局中与
视图模型
订阅数据。
当我与视图绑定
进行比较时,我发现两种方法都不错(视图绑定
更好地访问视图
,数据绑定
用于绑定数据),
因此哪种模式应该首选MVVM?
我应该转到视图绑定
,并仅在片段中处理ViewModel-layout
连接吗?
目前,我在两种情况下使用数据绑定
:
视图
视图模型
订阅数据。当我与视图绑定
进行比较时,我发现两种方法都不错(视图绑定
更好地访问视图
,数据绑定
用于绑定数据),
因此哪种模式应该首选MVVM?
我应该转到视图绑定
,并仅在片段中处理ViewModel-layout
连接吗?
如需更多信息,请查看以下链接:
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的比较
View binding(视图绑定)不会取代 Data binding(数据绑定)。
View binding 旨在处理简单的用例,而您可以在需要高级功能的布局中使用 data binding。
View binding 的优势:
与 data binding 相比的限制:
由于这些考虑因素,在某些情况下最好在项目中同时使用 view binding 和 data binding。
请查看 Android 官方文档,比较 View binding 和 Data binding:Comparison with data binding
最终一切取决于您的使用情况,
如果您想通过xml设置数据但愿意增加构建速度的代价,请使用Databinding;如果您只是想省略findViewById
,则使用view binding更为便宜。Databinding就像是viewbinding的超集。如果需要,您也可以同时使用两者。
我建议您观看Yigit的这个答案 https://youtu.be/QWHfLvlmBbs?t=42。