이 게시물을 무단으로 사용하는 행위(비영리, 영리 포함)는 CCL 2.0 저작자 표시-비영리-변경금지 라이센스에 의거하여 금지되어 있습니다. 원본 글의 출처 및 저작자를 표시해 주신다면 글의 스크랩은 자유롭게 하실 수 있습니다. 단, 비영리 목적의 발표(스터디 등)에 위 글을 사용하고 싶으신 분은 제게 미리 메일로 문의 부탁드립니다.
저작권과 관련된 자세한 사항은 이곳을 참조해 주시기 바랍니다.
저작권과 관련된 자세한 사항은 이곳을 참조해 주시기 바랍니다.
프래그먼트(Fragment)의 등장 배경
안드로이드 3.0(허니컴)이 공개되면서 태블릿에 적합한 여러 UI들이 공개되었는데, 그 중에서 대표적인 것이 바로 프래그먼트(Fragment) 입니다.
그럼, 과연 왜 프래그먼트라는 것이 추가되었을까요? 간단히 말하자면, 프래그먼트는 태블릿과 같은 큰 화면을 가지는 단말에서 애플리케이션이 화면을 더 효율적으로 활용할 수 있도록 도와줍니다. 기존에는 애플리케이션 화면을 구성하는 큰 틀이 액티비티(Activity) 하나였고, 이 안을 여러 뷰로 구성하여 정보를 표시하고, 상호작용을 수행했습니다.
그런데, 뷰만을 사용해서 다양한 내용을 보여주기는 매우 어려웠습니다. 특히나 전체적인 UI 틀은 고정되어 있으면서 특정 부분만 변화하며 다른 내용을 표시하도록 하려면 매우 복잡한 구성이 필요했죠. 또한, 서로 다른 역할을 하는 코드들이 같은 곳에 있게 되어서 가독성도 떨어지고 유지보수에도 악영향을 미쳤습니다.
이 때문에 대부분 애플리케이션에서는 뷰 처리의 어려움도 피하고, 코드도 분리하게 위해 액티비티 전환을 사용했습니다. 아래의 GMail 앱을 통해 전형적인 액티비티 구성 방식을 볼 수 있습니다.
G메일 앱의 액티비티 구성
이 방식은 상당히 깔끔했습니다. 애플리케이션의 흐름 구성도 자연스럽게 잡히게 되었구요. 하지만, 화면이 큰 태블릿 단말들이 소개되면서 이 방식의 구성이 화면을 쓸데없이 많이 차지한다는 것을 느끼게 되었습니다. 호환성 문제는 없었지만, 큰 화면을 효율적으로 활용하지 못하는 것이죠.
트위터 공식앱을 실행한 모습. 태블릿에 최적화되지 않아 공간을 낭비하고 있습니다.
안드로이드 3.0의 G메일. 넓은 화면을 효율적으로 사용하고 있습니다.
기존 버전에서는 메일 리스트와 내용이 각각 전체 화면으로 표시되었던 것에 반해 안드로이드 3.0용에서는 메일 리스트와 내용이 동시에 표시되는 것을 확인할 수 있습니다. 넓은 화면을 효과적으로 활용하는 것이죠.
넓은 화면을 효율적으로 사용하기
그렇다면, 넓은 화면을 효율적으로 사용하려면 단순히 한 화면에 여러 요소들을 구겨넣으면 되는 것일까요? 그렇지 않습니다. 한 화면에 여러 요소가 표시됨과 동시에 각 요소들을 조작하는 코드들은 각각 분리되어 있어야 합니다. 어떻게 보면 기존에 액티비티로 구현되던 요소들이 한 화면에 표시되는 것이죠.
프래그먼트(Fragment)는 이러한 요구사항들을 잘 충족합니다. 액티비티처럼 관련된 코드들을 한곳에 묶을 수도 있고, 일반 뷰처럼 애플리케이션 레이아웃에 프래그먼트를 자유롭게 배치할 수도 있습니다. 다음 화면을 통해 프래그먼트의 배치를 확인할 수 있습니다.
G메일 앱의 프래그먼트 배치 모습
이것으로 프래그먼트의 등장 배경과 간략한 특징에 대해 알아보았습니다. 다음 글에서는 프래그먼트의 더 자세한 특징 및 사용 방법에 대해 알아보도록 하겠습니다.
'화면 구성 > 프래그먼트(Fragment)' 카테고리의 다른 글
| 프래그먼트가 표시되지 않아요 -_-;; (3) | 2011/08/16 |
|---|---|
| 프래그먼트(Fragment) 정복! - (2) 프래그먼트 자세히 알아보기 (9) | 2011/05/19 |
| 프래그먼트(Fragment) 정복! - (1) 프래그먼트, 너는 누구냐? (2) | 2011/05/16 |
안드로이드 정보, 강좌를 누구보다 빨리 접하고 싶으신가요?
그렇다면 이메일 구독 혹은
를 통해 업데이트되는 최신 글들을 받아보실 수 있습니다. :)
TRACKBACK http://androidhuman.tistory.com/trackback/469
-
[android] 2.2에서 fragment 사용하기 삭제
2012/01/17 15:57TRACKBACK FROM 쎄미 - 우물쭈물하다가 내 이럴 줄 알았지fragment 에 대한 설명 : http://androidhuman.tistory.com/469 예제 소스는 http://daddycat.blogspot.com/2011/08/android-30-fragments-example.html 에서 가져와서 약간 수정했음. 허니컴 이하에서 사용할 때 주의할 점 : http:/..





댓글을 달아 주세요
이해가 잘되네요~! 감사합니다.
2012/03/20 18:15 [ ADDR : EDIT/ DEL : REPLY ]잘보고갑니다...*^^*...
2012/08/26 15:42 [ ADDR : EDIT/ DEL : REPLY ]출처 남기고 퍼갑니다..