이번 코드랩에서는 ViewModel 클래스의 데이터와 LiveData를 어떻게 통합하는지 배우게 될 것이다.
LiveData는 데이터베이스 변경이 있을 때 알려주는 데이터 객체를 빌드하도록 해주는 AAC 중 하나이다.
LiveData 클래스를 사용하기 위해서는 앱의 데이터 변경을 관찰하는 observer를 설정해야 한다.
LiveData는 lifecycle을 인식한다. 그래서 active lifecycle 상태에 있는 앱 구성 요소 observer만 업데이트한다.
LiveData에 관한 코드랩을 시작하기 앞서 만약 ViewModel의 사용법을 모른다면 먼저 공부해야 한다.
여기서 배울 내용은 이렇다.
- 무엇이 LiveData 객체를 유용하게 하는가
- 데이터가 저장된 ViewModel에 어떻게 LiveData를 추가하는가
- 언제 어떻게 MutableLiveData를 사용하는가
- 변경을 감지하기 위한 observer 메소드를 LiveData에 어떻게 추가하는가
- 백업 속성을 이용해 어떻게 LiveData를 캡슐화하는가
- UI controller와 이에 상응하는 ViewModel 사이에서 어떻게 소통하는가
여기서 수행할 내용은 이렇다.
- 앱에서 단어와 점수를 위해 LiveData를 사용한다.
- 단어나 점수 변경이 있을 때 알려주는 observer를 추가한다.
- 바뀐 값을 보여주는 textview를 업데이트한다.
- LiveData observer 패턴을 이용해 게임 종료 이벤트를 추가한다.
- 'Play Again' 버튼을 구현한다.
주의사항으로는 이 코드랩은 이전에 ViewModel에 관한 코드랩에서 수정한 앱의 코드를 사용하기 때문에
이전 코드랩을 보지 않았다면 위의 게시글을 통해 참고해주길 바란다.
'Android' 카테고리의 다른 글
Codelab으로 LiveData 알아보기 - 2. Attach observers to the LiveData objects (0) | 2023.01.18 |
---|---|
Codelab으로 LiveData 알아보기 - 1. Add LiveData to the GameViewModel (0) | 2023.01.17 |
Codelab으로 ViewModel 알아보기 - 4. Use a ViewModelFactory(完) (0) | 2023.01.13 |
Codelab으로 ViewModel 알아보기 - 3. Implement click listener (0) | 2023.01.03 |
Codelab으로 ViewModel 알아보기 - 2. Populate the ViewModel (0) | 2022.12.23 |