데이터베이스 및 RecyclerView

이 개발자 과정의 첫 번째 부분에서는 Room 라이브러리를 사용하여 데이터베이스를 만들고 코루틴을 사용하여 비동기 프로그래밍을 간소화합니다. 이 개발자 과정의 두 번째 부분에서는 RecyclerView를 사용하여 항목의 목록을 표시하고 목록 항목을 클릭 가능하도록 설정합니다. 개발자 과정 전반에 걸쳐 사용자가 수면의 질을 평가하고 시간 경과에 따라 수면 데이터를 저장할 수 있는 TrackMySleep 앱을 빌드하게 됩니다.

활동 8개
1

Room 데이터베이스 만들기

Codelab

TrackMySleep 앱의 시작 코드를 가져옵니다. 그런 다음 Android 앱의 데이터 저장소 지속성을 위해 Room을 사용합니다. Room은 Android Jetpack의 일부인 데이터베이스 라이브러리로, 데이터베이스 설정 및 관리를 비롯한 여러 작업을 처리하여 기본 SQLite 데이터베이스에 관한 추상화 레이어를 제공합니다. 상용구 코드를 적게 사용하면 데이터베이스와 더 쉽게 상호작용할 수 있습니다.

2

Room에서 코루틴 사용

Codelab

Kotlin 코루틴을 사용하여 Android 앱의 장기 실행 작업을 원활하고 효율적으로 처리하세요. Room에서는 코루틴을 지원하므로 데이터베이스 액세스 및 업데이트와 같은 비동기 작업에 코루틴을 사용하도록 앱을 리팩터링합니다.

3

LiveData를 사용하여 버튼 상태 제어

Codelab

TrackMySleep 앱을 확장하여 품질 평점을 수집하고 데이터베이스에 평점을 추가한 후 결과를 표시합니다. LiveData를 사용하여 스낵바 표시를 트리거하고 버튼을 사용 설정 또는 사용 중지합니다.

4

RecyclerView 기초

Codelab

이 개발자 과정의 나머지 부분에 도움이 되는 추가 애셋 및 유틸리티가 포함된 TrackMySleep 앱의 다음 단계를 가져옵니다. Android 앱에서 RecyclerView를 사용하여 항목 목록을 효율적으로 표시합니다.

5

RecyclerView를 사용한 DiffUtil 및 데이터 결합

Codelab

대규모 목록에서 RecyclerView를 더 효율적으로 만들고, 코드를 더 쉽게 유지관리하고 더 복잡한 UI를 위해 확장하도록 하는 추가 기법을 알아보세요.

6

RecyclerView의 그리드 레이아웃

Codelab

TrackMySleep 앱에서 RecyclerView로 표시된 수면 데이터 목록을 수면 데이터의 그리드 레이아웃으로 바꿉니다.

7

RecyclerView 항목과 상호작용

Codelab

항목을 탭하면 사용자가 세부정보 화면으로 이동하도록 RecyclerView의 항목을 클릭 가능하도록 설정합니다.

8

RecyclerView에 헤더 추가

Codelab

TrackMySleep 앱의 목록과 그리드에 헤더를 추가합니다.