라이브 데이터란?
생명주기를 인식할수 있는 관찰 가능한 홀더 클래스 이다. 액티비티 혹은 프래그 먼트의 생명주기가 STARTED, RESUMED상태이면 LiveData는 관잘자를 활성화 상태로 인식한다. DESTROY가 되면 관찰자를 삭제한다.
Live Data의 장점
구글 권장
라이브 데이터를 사용하기 위해 다음 세가지를 구현 하면 된다.


-> 라이브데이터의 value값이 변하자 observer{…} 블록이 실행되고 TextView 값이 변하는 것을 확인할 수 있다.


-> liveData.value 에 ArrayList를 할당하였다
-> 버튼을 클릭하면 liveData.value의 ArrayList.add를 수행하였다.
-> liveData.value 의 size와 Observer 호출 여부를 Log로 찍어보았다.
-> Observer{…} 실행되지 않는 것을 확인
-> liveData가 참조하고 있는 값이 변하는 것이 아닌 liveData의 참조가 변해야 Observer{..}블록 실행하는 것을 알 수 있다.
EditText에 값을 입력한후 버튼을 누르면 RecyclerView의 item의 TextView에 입력한 text가 나타나도록한다.



-> updateUI 메서드에서는 라이브 데이터로 부터 전달받은 배열로 adapter를 생성해 recycler뷰의 어뎁터를 교체 해준다.

-> 데이터 를 뷰와 바인딩 하는 기능은 홀더 내에서 수행화도록 한다.

-> Recycler View Adapter 구현
| ViewModel (0) | 2021.07.28 |
|---|---|
| RecyclerView (0) | 2021.07.28 |
| Room database (0) | 2021.07.27 |
| 4대 컴포넌트 - SERVICE (0) | 2021.05.29 |
| CHAP 13 -1 MediaPlayer class (0) | 2021.05.28 |