LiveData란?
- 식별 가능한 데이터 홀더 클래스. 스스로 수명주기를 인식함
- Data의 변경을 관찰할 수 있는 Data Holder 클래스
- UI와 데이터 상태의 일치 보장
- 메모리 누출이 없음
- 비정상 종료가 없음
- 수명주기를 자동으로 관리
- 최신의 데이터 유지
- 기기회전 등 프래그먼트나 액티비티가 재생성되어도 데이터의 변화가 없음
ViewModel과 함께해야 효과가 커짐
ViewModel 안에 있는 LiveData 객체를 DataBinding을 통해 UI에서 관찰만 할 수 있도록 만들면 액티비티나 프래그먼트에서 일일히 데이터를 갱신할 필요 없이 알아서 UI에 최신 데이터가 보이게 될 것
- Observable과 다르게 LifeCycle을 알고있음 → 활성(active:STARTED/RESUMED)상태일 때만 데이터를 업데이트
- Observer 객체와 함께 사용 → LiveData 변화 감지!! → LiveData는 Observer에게 변화 알림 → Observer OnChanged() 메소드 호출
'Android > Jetpack' 카테고리의 다른 글
Android Studio에서 Proto DataStore 설정하는 방법 (gradle kotlin) (0) | 2024.11.07 |
---|---|
Preference DataStore와 Proto DataStore의 차이 (0) | 2024.11.05 |
[Android/Jetpack]ViewModel + Databinding + LiveData (0) | 2023.02.24 |
[Android/Jetpack]Databinding 사용하기 (0) | 2023.02.24 |