2 回答

TA貢獻(xiàn)1963條經(jīng)驗(yàn) 獲得超6個(gè)贊
可以使用框架,參考內(nèi)容如下:
1、概述
Databinding 是一種框架,MVVM是一種模式,兩者的概念是不一樣的。我的理解DataBinding是一個(gè)實(shí)現(xiàn)數(shù)據(jù)和UI綁定的框架,只是一個(gè)實(shí)現(xiàn)MVVM模式的工具。ViewModel和View可以通過(guò)DataBinding來(lái)實(shí)現(xiàn)單向綁定和雙向綁定,這套UI和數(shù)據(jù)之間的動(dòng)態(tài)監(jiān)聽和動(dòng)態(tài)更新的框架Google已經(jīng)幫我們做好了。在MVVM模式中ViewModel和View是用綁定關(guān)系來(lái)實(shí)現(xiàn)的,所以有了DataBinding 使我們構(gòu)建Android MVVM 應(yīng)用程序成為可能。
之前看了很多關(guān)于DataBinding的博客和相關(guān)的一些Demo,大多數(shù)就是往xml布局文件傳入一些數(shù)據(jù),然后把這些數(shù)據(jù)綁定到控件上( 如TextView binding:text=“@{user.name} ),接著在這些控件上(如Button binding:setOnClickListener=”@{user.listener}”) 設(shè)置一些事件到控件上,基本講述都是DataBinding的基本用法。但是并沒有人告訴你把一個(gè)onClickListener 寫到一個(gè)類并把這個(gè)listener綁定到xml里面上是不是不太好,也沒有人告訴你這個(gè)和xml布局綁定的ViewModel類應(yīng)該放哪些數(shù)據(jù),應(yīng)該做什么事?應(yīng)該如何設(shè)計(jì)?更是很少有博文來(lái)告訴你在Android 中如何通過(guò)Data Binding 去構(gòu)建MVVM 的應(yīng)用框架。這也就是是本篇文章的重點(diǎn)。接下來(lái),我們先來(lái)看看什么是MVVM,然后在一步一步來(lái)設(shè)計(jì)整個(gè)應(yīng)用程序框架。
- 2 回答
- 0 關(guān)注
- 709 瀏覽
添加回答
舉報(bào)