🤷 {Activity랑 Fragment는 도대체 뭐가 다른가요?)
안드로이드 어플에서 화면을 구성하는 요소로 크게 Activity와 Fragment를 꼽을 수 있다. 동일한 폴더에 .xml 파일로 뷰를 구성하는 점이 동일해, 언제 어느 것을 사용해야하는지 헷갈리는 경우가 있다.
이번 글에서는
정리한다.
사용자가 직접 보고 입력하는 화면!
공식문서
https://developer.android.com/guide/components/activities/intro-activities
Activity란 안드로이드 어플을 구성하는 중요한 요소로, 여러 프로그램들이 main()함수로 프로그램을 시작하는 것처럼, 안드로이드는 Activity 인스턴스를 호출하여 시스템을 시작한다.
Activity는 앱이 사용자에게 보여줄 UI를 그리는 것을 담당하기도 한다. 대체로 화면에 꽉 차게 생성되지만, 화면보다 작게 만들어 다른 창 위에 띄울 수도 있다.
공식 문서
https://developer.android.com/guide/fragments
하나의 어플을 다양한 화면 비율에 대응하게 만든다고 생각해보자. constraint Layout을 사용해 제약조건을 정의하는 것 만으로는 한계가 있다. 그렇다고 화면을 구성하는 모든 View를 비율에 맞춰 다시 디자인하고 작성하는 건 너무너무 끔찍하지 않은가?! (나는 그런데...)

이 때, UI를 쪼개고 모듈화해서, 각 비율에 알맞은 화면으로 구성할 수 있도록 하는 것이 Fragment이다.
위의 사진은 Fragment(초록색)를 이용해서 list를 탭 비율에서는 grid list로, 스마트폰 비율에서는 linear list로 보여주는 예시이다.
실제로는 이렇게 태블릿 환경에 대응할 때 보다는,
사용된다.