728x90
Fragment
- 분할된 화면들을 독립적으로 구성하기 위해 사용함
- 분할된 화면들의 상태를 관리하기 위해 사용함
- 액티비티에 동적으로 fragment 추가, 삭제 할 수 있어서 동적으로 UI 구성 가능
- 항상 activity 위에 올라가 있어야함 (fragment 입장에서는 activity가 시스템의 역할)
※ Activity와 ActivityGroup을 이용하여 여러 개의 액티비티를 사용할 수도
있음
-> but 액티비티는 하나의 화면을 독립적으로 구성할 때 필요한 여러가지 속성들을 사용하며 안드로이드 시스템에서 관리하는 어플리케이션 구성요소
-> 단말의 리소스를 많이 사용하는 비효율적인 방법
Fragment vs Activity
|
Fragment |
Activity |
관리 주체 |
프래그먼트 매니저 |
안드로이드 시스템의 액티비티 매니저 |
데이터 전달 역할 |
메소드 |
인텐트 |
수명주기 (Life Cycle)
1. onAttach
- 프래그먼트가 부모 액티비티(컨텍스트)에 연결될 때 호출 (바인딩)
2. onCreate
- 프래그먼트가 처음 생성될 때 호출
- 프래그먼트 생성
- 초기화 작업
3. onCreateView
- 프래그먼트가 생성되면 UI를 생성하기 위해 호출
- UI 생성
- 프래그먼트 UI 생성 및 인플레이트 한 후 반환
4. onActivityCreated
- 부모 액티비티와 프래그먼트의 UI가 생성되면 호출
- 프래그먼트 초기화
5. onStart
- 가시수명 시작 전 호출
6. onResume
- 활성수명 시작 전 호출
7. onPause
- 활성수명 종료 후 호출
8. onSaveInstanceState
- 활성수명 종료 시 UI 상태 저장을 위해 호출
- 부모 액티비티 재시작 시 onCreateView와 onActivityCreated에 상태정보 전달
9. onStop
- 가시수명 종료 후 호출
10. onDestroyView
- 프래그먼트의 뷰가 분리되면 호출
- UI 소멸
11. onDestroy
- 전체수명 종료 후 호출
- 프래그먼트 소멸
12. onDetach
- 프래그먼트가 부모 액티비티(컨텍스트)로부터 분리된 후 호출
프래그먼트 트랜잭션 (FragmentTransaction)
- 액티비티 안에 동적으로 프래그먼트 추가, 제거, 교체할 때 사용됨
728x90
'Android' 카테고리의 다른 글
[안드로이드] 액티비티 상태 (0) | 2020.09.08 |
---|---|
[안드로이드] 애플리케이션 우선순위 (0) | 2020.09.08 |
[안드로이드] View와 ViewGroup (0) | 2020.09.08 |
[안드로이드] layout 종류 (0) | 2020.09.08 |
[안드로이드] 이미지(bitmap)에서의 색추출 : Palette (0) | 2020.09.08 |
댓글