データベースと RecyclerView

このパスウェイの前半では、Room ライブラリを使用してデータベースを作成し、コルーチンを使用して非同期プログラミングを簡素化します。パスウェイの後半では、RecyclerView を使用してアイテムのリストを表示し、リストアイテムをクリック可能にします。パスウェイ全体を通じて、ユーザーが睡眠の質を評価し睡眠データを経時的に保存できる TrackMySleep アプリを作成します。

 

Room データベースを作成する

コードラボ

TrackMySleep アプリのスターター コードをインポートします。その後、Room を使用して、Android アプリでデータ ストレージを永続化します。Room は、Android Jetpack の一部であるデータベース ライブラリです。Room は、データベースの設定と管理に関する作業の多くを処理することによって、基盤となる SQLite データベースの上に抽象化レイヤを提供します。ボイラープレート コードの削減により、データベースをより簡単に操作できます。

Room でコルーチンを使用する

コードラボ

Kotlin コルーチンを使用すると、Android アプリで長時間実行されるタスクをスムーズかつ効率的に処理できます。Room はコルーチンをサポートしているため、アプリをリファクタリングして、データベースへのアクセスや更新などの非同期タスクにコルーチンを使用するようにします。

LiveData を使用してボタンの状態を制御する

コードラボ

TrackMySleep アプリを拡張して品質評価を収集し、その評価をデータベースに追加して結果を表示します。LiveData を使用してスナックバーの表示をトリガーし、ボタンを有効または無効にします。

RecyclerView の基礎

コードラボ

いくつかのアセットとユーティリティを追加して TrackMySleep アプリの次のステージをインポートし、このパスウェイの残りの部分で活用します。Android アプリで RecyclerView を使用すると、アイテムのリストを効率的に表示できます。

DiffUtil および RecyclerView とのデータ バインディング

コードラボ

大規模なリストでの RecyclerView の効率を高める手法と、より複雑な UI に合わせた容易なコードの保守と拡張について学習します。

RecyclerView のグリッド レイアウト

コードラボ

TrackMySleep アプリの RecyclerView で表示される睡眠データのリストを、睡眠データのグリッド レイアウトに置き換えます。

RecyclerView アイテムを操作する

コードラボ

RecyclerView のアイテムをクリックできるようにして、ユーザーがアイテムをタップしたときに詳細画面に移動できるようにします。

RecyclerView にヘッダーを追加する

コードラボ

TrackMySleep アプリでリストとグリッドにヘッダーを追加します。

データベースと RecyclerView に関するテスト

知識をテストして、「データベースと RecyclerView」バッジを獲得しましょう。