마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

One Activity - Mutil Fragment 궁금합니다.

0 추천
OneActivity - MultiFragment 가 안드로이드 개발 할 때 메모리나 속도 측면에서 많이 사용하고 권장한다고 들었습니다.

저도 Fragment를 자주 사용했지만 OneActivity 는 아니고 2~3개 정도의 액티비티는 항상 만들었던 것 같습니다.

 

이번에 한번 시도해보려고 하는대 제 생각에는 답이 안나와서 질문드립니다.

 

처음 한개의 액티비티를 Fragment Container만 포함한 빈 액티비티로 만들고 프래그먼트를 모두 집어넣는것이 효율적인지 모르겟습니다.

 

메인 액티비티에 공통적으로 들어갈 뷰를 만들어놓고 그 안에 프래그먼트를 집어넣으면 디자인이 아예 다른 뷰에서는 액티비티를 새로 만들어야되는건가요 ?

 

아니면 정말 액티비티에 프래그먼트 컨테이너 하나 설정해놓고 나머지 뷰를 다 프래그먼트로 제작해야되나요?

만약 그렇게 된다면 2~3개의 화면 빼고 공통적으로 들어가는 뷰는 어디에 설정해야될까요?
개린쓰 (680 포인트) 님이 2023년 6월 23일 질문

1개의 답변

0 추천
 
채택된 답변
Toolbar, bottomNavigationVviw,  NavigationDrawer같은 앱의 외곽을 구성하는 뷰들은 MainActivity의 레이아웃에 집어넣으시면 됩니다. 물론 각각의 fragment가 포함을 할 수도 있는데, 이건 님의 선택사항입니다.
공통으로 사용할 경우는 화면의 이동에 따라 scaffold 뷰들을 보여주거나 감추거나 하시면 됩니다. FragmentMangager나 NavigationComponent를 사용하면 현재 어떤 fragment가 보이는 상태인지 체크할 수 있습니다.
Fragment만 사용하실 거라면 NavigationComponent를 사용하시는게 번거로움을 줄일 수 있습니다.
그리고 개발자 가이드와 가이드에 링크된 샘플코드를 참조하시면 충분히 참고가 되실 겁니다.
https://developer.android.com/guide/navigation/get-started
spark (227,530 포인트) 님이 2023년 6월 23일 답변
개린쓰님이 2023년 6월 23일 채택됨
oneActivity - MultiFragment라고 해서 꼭 하나의 프래그먼트만 사용해야 된다는건 아니라는 말씀 맞나요?

이번에 NavigationComponent 사용하려고 독스보면서 하고있는대 쉽지가 않네요 ㅎㅎ

도움 감사합니다!
거의 대부분의 경우는 Single Activity + Fragment만으로 처리가 가능합니다. 개발자 가이드를 꼼꼼히 살펴보시면 원하시는 정보가 다 들어 있습니다.
공통의 항목들인 뷰는 하나의 액티비티에서 기본적인 작업을 하고 프레그먼트로 처리하면 되는것 까지는 그 전 작업들로 인해서 이해가 완료됫는대 인트로 액티비티 같은 재사용되지 않고 기존의 뷰와 완전히 다른 레이아웃 같은 화면들을 싱글 액티비티로 처리한다는게 이해가 잘 안되네요...

항상 답변 감사합니다!
필요하시다면 Activity를 여러개 사용하셔도 상관은 없는데, 대부분의 경우는 Fragment 만으로도 대체가 가능합니다. 인트로같이 레이아웃이 다른 부분은 툴바나 바텀바같은 프레임만 보여주지 않고 풀 화면으로 만들면 됩니다. 알려드린 개발자 링크를 보면 어떻게 제어하는지 예제가 나옵니다.
혹 스플래시 화면을 말씀하시는거면,  안드로이드 스플래시 라이브러리를 사용하시는게 처리하기에 훨씬 낫습니다. https://developer.android.com/develop/ui/views/launch/splash-screen
항상 좋은 답변 감사합니다!
...