架構元件

瞭解 ViewModel、LiveData、LiveData 轉換,以及如何將資料繫結與 ViewModel 和 LiveData 相互整合。您將完成 GuessTheWord 應用程式,在這款雙人比手畫腳遊戲中,玩家要彼此合作,盡可能獲得最高分。

 

ViewModel

程式碼研究室

匯入 GuessTheWord 應用程式的範例程式碼,並建立用來保存遊戲狀態 (例如字詞清單、目前的字詞和分數) 的 ViewModel。將這些資料儲存在 ViewModel 中後,即使設定發生變化 (例如裝置旋轉),應用程式狀態也仍會保持不變。

LiveData 與 LiveData 觀測器

程式碼研究室

在 ViewModel 中使用 LiveData 和 MutuableLiveData 來封裝應用程式的使用者介面資料 (要顯示的資料)。為 LiveData 新增觀測器,讓片段在 LiveData 的值發生變化時可更新其使用者介面。

將資料繫結與 ViewModel 和 LiveData 互相整合

程式碼研究室

將 LiveData 和 ViewModel 與資料繫結互相整合,讓版面配置中的檢視畫面直接與 ViewModel 物件通訊,而不必使用應用程式的片段轉發資訊。

LiveData 轉換

程式碼研究室

將 LiveData 轉換成其他結果,並讓使用者介面在每次基礎 LiveData 發生變化時顯示新結果。

「架構元件」測驗

測驗您所學到的知識,並獲得「架構元件」徽章。