티스토리 뷰

개인과제 레이아웃을 그리다가

기왕 할 거 최대한 비슷하게 그리면 좋지 않을까?! 란 생각에 당x마켓이랑 똑같이 만들다가

fragment에도 생명주기가 있어서 한번 정리해 보았다....!

(activity보다 더 복잡한 것 같다..!)

 


 

1. OnAttach()

  • 프래그먼트가 액티비티에 붙을 때 호출하며, 인자로 Context가 주어진다.

 

2. OnCreate

  • 프래그먼트가 액티비티의 호출을 받아 생성되면 Bunddle로 액티비티로부터의 데이터가 넘어온다. (UI는 초기화가 불가능)

 

3. onCreateView()

  • 레이아웃 inflate 담당
  • savedInstanceState로 이전 상태에 대한 데이터 제공
  • View와 관련된 객체를 초기화 할 수 있음

 

4. onViewCreated()

  • onCreagteView()를 통해 반환된 View 객체는 onViewCreated()의 파라미터로 전달 된다.
  • 이 때 Lifecycle이 INITIALIZED 상태로 업데이트가 됨
  • 때문에 View의 초기값 설정, LiveData 옵저빙, RecyclerView, ViewPager2에 사용될 Adapter 세팅은 이 메소드에서 해주는 것이 적절함

 

5. onViewStateRestored()

  • 저장해둔 모든 state 값이 Fragment의 View의 계층 구조에 복원되었을 때 호출 ex) 체크박스 위젯이 현재 체크되어있는가
  • View lifecycle owner : INITIALIZED → CREATED 변경

 

6. onStart()

  • 사용자에게 보여질 수 있을 때 호출
  • Activity의 onStart() 시점과 유사
  • Fragment의 childFragmentManager을 통해 FragmentTransaction을 안전하게 수행할 수 있음
  • View lifecycle owner : CREATED → STARTED 변경

 

7. onResume()

  • 사용자와 프래그먼트가 상호작용 할 수 있는 상태일 때 호출
  • Fragment가 보이는 상태에서 모든 Animator와 Transition 효과가 종료되고, 프래그먼트와 사용자가 상호작용 할 수 있을 때 onResume Callback

 

8. onPause()

  • Fragment가 visible 일 때 onPause()가 호출
  • 이 때 Faragment와 View의 Lifecycle이 PAUSED가 아닌 STARTED가 됨

 

9. onStop()

  • Fragment가 더 이상 화면에 보여지지 않게 되면 onStop() 콜백 호출
  • 부모 액티비티, 프래그먼트가 중단될 때, 상태가 저장될 때 호출
  • View와 Lifecycle : STARTED → CREATED
  • API 28버전을 기점으로 onSaveInstanceState() 함수와 onStop() 함수 호출 순서가 달라짐, 따라서 onStop()이 FragmentTransaction을 안전하게 수행하는 마지막 지점이 됨

10. onDestoryView()

  • 모든 exit animation, transaction이 완료되고 Fragment가 화면으로부터 벗어났을 경우 호출
  • view와 lifecycle : CREATED → DESTROYED
  • 가비지 컬렉터에 의해 수거될 수 있도록 Fragment View에 대한 모든 참조가 제거되어야 함
  • getViewLifecycleOwnerLiveData()

11. onDestroy()

  • Fragment가 제거되거나, FragmentManager가 destroy 됐을 경우, onDestroy() 콜백 함수가 호출
  • Fragment Lifecycle의 끝을 알림

12. onDetach()

  • 프래그먼트가 액티비티로부터 해제되어질 호출된다.

일단 찾아보면서 나온 내용?에 대해 적어봤는데...아직 정확하게 이해는 가지 않는다..!! 

좀 더 구체적으로 알게 되면 따로 게시글을 작성해봐야 겠다..!!!ㅠㅠ!!

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2025/07   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
글 보관함