728x90
ViewModel 의 라이프 사이클은 Activity 나 Fragment 보다 길기 때문에 ViewModel 에서 Fragment, Activity 에 콜백 받는 것은 실수를 유발합니다 (ViewModel 에서든) 라이브데이터나 플로우를 사용하여 관찰(observe) 혹은 수집(collect) 하는 것이 좋습니다.
// Activity or Fragment.kt
viewModel.loadItemList() { list ->
// Activity 가 Destroy 상태거나 Fragment 인 경우 not Attached 일 수 있음
// 또한 isDestroyed 혹은 isAdd 와 같은 상태를 확인하는 처리가 필요하게 됩니다
adapter.submitData(list)
}
728x90
'Android > Development Tips' 카테고리의 다른 글
Coil 썸네일 구현하기 (0) | 2021.11.23 |
---|---|
안드로이드 하드웨어 비트맵 (0) | 2021.11.20 |
Google login errorCode 12500 인 경우 (0) | 2021.06.07 |
Proguard 로 난독화 된 코드 복호화 (0) | 2021.05.31 |
Bitmap, contentUri 를 Retrofit RequestBody 에 담을 때 Tips (1) | 2021.05.17 |