資料庫和 RecyclerView

在這個課程的第一部分中,您將使用 Room 程式庫建立資料庫,並使用協同程式簡化非同步程式設計流程。在這個課程的第二部分中,您將使用 RecyclerView 顯示項目清單,並將清單項目設為可點選。在整個課程中,您將建構 TrackMySleep 應用程式。這個應用程式可讓使用者為睡眠品質評分並長期儲存睡眠資料。

8 項活動
1

建立 Room 資料庫

程式碼研究室

匯入 TrackMySleep 應用程式的範例程式碼,並使用 Room 在 Android 應用程式中建立持續性的資料儲存空間。Room 是 Android Jetpack 中的資料庫集,可處理許多資料庫設定和管理作業,藉此為基礎 SQLite 資料庫提供抽象層。因為需要使用的樣板程式碼較少,您與資料庫互動便會顯得比較輕鬆。

2

透過 Room 使用協同程式

程式碼研究室

使用 Kotlin 協同程式順暢又有效率地處理 Android 應用程式中長時間執行的工作。Room 支援協同程式,因此您必須重構應用程式,使用協同程式處理非同步工作 (例如存取和更新資料庫)。

3

使用 LiveData 控制按鈕狀態

程式碼研究室

擴充 TrackMySleep 應用程式來取得品質評分、將評分新增到資料庫並顯示結果。使用 LiveData 觸發 Snackbar 顯示事件,以及啟用或停用按鈕。

4

RecyclerView 基礎知識

程式碼研究室

匯入 TrackMySleep 應用程式的下一階段,運用其他資產和公用程式完成本課程的剩餘部分。在 Android 應用程式中使用 RecyclerView,以便有效率地顯示項目清單。

5

將 RecyclerView 與 DiffUtil 和資料繫結搭配使用

程式碼研究室

學習其他技巧來提升 RecyclerView 對於大型清單的執行效率,並讓程式碼更易於維護,且能為較複雜的使用者介面進行擴充。

6

RecyclerView 中的格線版面配置

程式碼研究室

以格線版面配置顯示睡眠資料,取代由 TrackMySleep 應用程式中 RecyclerView 所顯示的睡眠資料清單。

7

與 RecyclerView 項目互動

程式碼研究室

將 RecyclerView 中的項目設為可點選,讓使用者在輕觸項目後前往詳細資料畫面。

8

在 RecyclerView 中新增標頭

程式碼研究室

在 TrackMySleep 應用程式中新增清單和格線標頭。