GridLayout 이란?
차원 격자무늬 형태의 레이아웃으로 행과 열의 집합형태로 구성된 레이아웃입니다.
GridLayout 속성 - orientation / rowCount / columnCount
속성 | 설명 |
orientation | 자식 뷰(View)들이 GridLayout의 각 셀 영역에 배치되는 방향을 결정합니다. orientation = "horizontal" : 수평방향으로 뷰(View)를 정렬합니다. orientation = "vertical" : 수직방향으로 뷰(View)를 정렬합니다. |
rowCount | GridLayout의 행의 개수를 지정합니다. |
columnCount | GridLayout의 열의 개수를 지정합니다. |
layout_gravity
layout_gravity 속성은 다른 레이아웃 공부를 하면서 익숙하게 봤던 속성입니다. GridLayout의 자식 뷰(View)들이 가지는 속성인 layout_gravity 속성을 통해 해당 자식 뷰(View)가 셀의 어느 위치에 배치될지를 결정할 수 있습니다. 속성값별로 배치되는 영역은 아래를 참조 바랍니다.
속성값 | 설명 |
layout_gravity = "top" | 셀의 상단에 배치 |
layout_gravity = "bottom" | 셀의 하단에 배치 |
layout_gravity = "left" | 셀의 좌측에 배치 |
layout_gravity = "right" | 셀의 우측에 배치 |
layout_gravity = "center_vertical" | 수직으로 중앙에 배치 |
layout_gravity = "center_horizontal" | 수평으로 중앙에 배치 |
layout_gravity = "center" | 셀의 정중앙에 배치 |
layout_gravity = "fill_horizontal" | 셀에 배치되는 뷰(View)의 너비를 셀의 너비에 맞춤 |
layout_gravity = "fill_vertical" | 셀에 배치되는 뷰(View)의 높이를 셀의 높이에 맞춤 |
layout_gravity = "fill" | 셀의 전체 크기에 맞게끔 뷰(View)의 크기를 맞춤 |
출처 : https://lktprogrammer.tistory.com/136
GridLayout 특징
TableLayout의 단점을 보완한 레이아웃으로 LinearLayout 또는FrameLayout과 같은 다른 레이아웃의 장점을 포함하는 레이아웃입니다. GridLayout을 사용할 시 다른 레이아웃과 중첩으로 사용할 필요가 없어 메모리 사용량을 줄일 수 있다는 장점이 있습니다.
직접 구현해보기
fragment_eight.xml
1 2
3 4
5 6
EightFragment.xml
실행화면
'App > Layout' 카테고리의 다른 글
RecyclerView (0) | 2024.01.01 |
---|---|
TabLayout (0) | 2023.12.28 |
TableLayout (0) | 2023.12.28 |
ConstraintLayout(계산기 모양 만들어보기) (0) | 2023.12.27 |
RelativeLayout (0) | 2023.12.27 |