Closed shshksh closed 3 years ago
bottom navigation 을 쓰면 fragment가 전환 될 때마다 replace 시키기 때문에 fragment 가 destroy 된다.
이때 fragment의 상태를 유지하기 위한 방법에는 어떤 것들이 있고 어떤 방법이 좋은 방법일까? bottom navigation을 구현한 개발자는 왜 fragment를 destroy 하도록 했을까?
ViewModel이 어떻게 생성되고 동작하는가 (LifecycleOwner, ViewModelStore, ViewModelStoreOwner, ViewModelProvider, ViewModelFactory, ViewModel의 SavedStateHandle, ...) + onSavedInstanceState는 더 이상 필요 없는가?
Fragment에서 데이터바인딩을 할 때와 라이브데이터를 사용할 때, 바인딩의 lifecycleOwner를 fragment의 lifecycle로 지정해주는 것과 fragment view의 lifecycle viewLifecycleOwner로 지정해주는 것의 차이, 라이브데이터를 옵저빙할 때 어떤 생명주기에 맞춰서 데이터를 갱신할지..?
ui 업데이트 용으로는 라이브데이터를 fragment view의 lifecycle에 맞춰서 데이터를 갱신하는게 적절하다고하는 이유
일단 적어봤는데 저도 뭔소리를 하는지 모르겠네요... 정리가 안돼요... ㅋㅋㅋ
Fragment 상태전환 라이프사이클(Viewbinding fragment 메모리릭 문제)
Activity Lifecycle Fragment Lifecycle View Lifecycle
각각의 라이프사이클이 어떻게 동작하는지. 단순히 생성되고 종료될 때의 라이프사이클 뿐만 아니라 액티비티, 프래그먼트 전환 등 여러 상황에서의 라이프사이클 흐름.
라이프사이클을 이해해야 하는 이유. 관련 이슈 같은거??
할 수 있다면 라이프사이클 관련 라이브러리(ViewModel, LiveData, ...)까지