第 8 課:應用程式架構 (UI 層)

  1. 為了避免在裝置設定變更期間遺失資料,你應該在哪個類別之中儲存應用程式資料?

  2. ViewModel 不可內含任何片段、活動或檢視畫面的參照。請問這段敘述是否正確?

  3. ViewModel 會在何時遭到刪除?

  4. ViewModelFactory 介面的用途為何?

  5. 要如何封裝儲存於 ViewModel 中的 LiveData,讓外部物件可以讀取但無法更新資料?

  6. 當 UI 控制器處於下列何種狀態時,LiveData 會更新 UI 控制器 (例如片段)?

  7. LiveData 觀測器模式中,可觀測的項目是什麼 (觀測到了什麼)?

  8. 您應該在哪一個類別中新增資料格式化邏輯,以使用 Transformations.map() 方法將 LiveData 轉換為不同的值或格式?

  9. Transformations.map() 方法會提供一個簡易的方式,可在 LiveData 中執行資料操控,並傳回 ___。

  10. Transformations.map() 方法有哪些參數?

  11. 傳入 Transformations.map() 方法的 lambda 函式會在哪個執行緒中執行?