android 數據綁定
現在MVVM 設計模式在前端相當火爆,流行框架都以 MVVM 模式基礎進行設計的。他的好處完全解開 model 和 view 間的耦合。那麼在 android 端,其實 android 也是前端。我們通常開發流程,對 UI 操作也類似,我們創建 UI 給他一個 id,然後在寫業務時通過 id 獲取對應UI 組件,最後對對這個組件進行的屬性進行修改來達到與用戶交互。
那麼好,看看下圖我們就是我們如何更新界面
雖然butterknife 這樣的庫可以通過註解的方式讓我們可以省去一些中間過程,但是他不是解決問題根本。
但是在 2015 的 google 開發者大會上,google 給我們帶來一條振奮人心的好消息那就是 android 也支持數據綁定了,代碼優雅
那麼我們怎樣實現數據綁定呢
我們首先要修改 build.gradle(app), gradle 原生就對 data binding 支持,無需添加其他的庫
看到了吧 enabled = true 就這麼簡單
然後我們修改 layout.xml 以便讓他支持數據綁定
看到了吧,我們對原有LinearLayout標籤再套一層 layout 標籤,然後定義變數 vriable 中的 data 標籤定義用於與視圖綁定的類 User 以及在綁定使用的名稱 user 具體在標籤中使用時形式為 @
在看一看我們的 User 類是什麼樣子。
User 繼承了 BaseObservable ,然後用註解對欄位進行綁定。
回頭再看一看 Activity 中怎麼處理,重點說明一下,這裡 ActivityDataBindBinding 是系統幫助我們自動生成的。名字DataBindActivity 而來,他們之間規律自己總結吧。Api 很人性化,自己看的。
TAG:小馬學編程 |