TableLayout이란?
( "Table"이라는 단어의 여러 의미 중에 "표"가 있다는 것을 떠올리면 TableLayout이 어떻게 표시되는지 쉽게 이해할 수 있습니다. )
TableLayout은 행과 열로 하위 View 요소를 표시하는 ViewGroup입니다.
TableLayout은 자신의 하위 요소를 행과 열에 배치합니다.
TableLayout 컨테이너는 행, 열 또는 셀의 테두리 선을 표시하지 않습니다.
표에는 셀이 가장 많은 행과 같은 수의 열이 있습니다. 테이블은 셀을 비워둘 수 있습니다.
셀은 HTML에서와 마찬가지로 여러 열에 걸쳐 있을 수 있습니다.
TableRow.LayoutParams 클래스의 span 필드를 사용하여 열을 확장할 수 있습니다.
TableLayout 특징
( 하나의 행(Row)을 추가할 때는 "<TableRow>"라는 요소를 명시적으로 사용하지만, 열(Column)을 추가하는 요소는 별도로 정의되어 있지 않습니다. 대신, "<TableRow>"에 뷰(View) 위젯을 선언하는 것만으로 새로운 열(Column)이 추가됩니다. )
TableRow 객체는 TableLayout의 하위 뷰입니다(각 TableRow는 표에서 단일 행을 정의함).
각 행에는 0개 이상의 셀이 있으며 각 셀은 다른 View 중 어떤 종류로든 정의할 수 있습니다.
따라서 한 행의 셀은 ImageView 또는 TextView 객체와 같이 다양한 View 객체로 구성될 수 있습니다. 셀은 또한 ViewGroup 객체가 될 수도 있습니다
( 하나의 행(Row)을 추가할 때는 "<TableRow>"라는 요소를 명시적으로 사용하지만, 열(Column)을 추가하는 요소는 별도로 정의되어 있지 않습니다. 대신, "<TableRow>"에 뷰(View) 위젯을 선언하는 것만으로 새로운 열(Column)이 추가됩니다. )
TableLayout 속성
1.stretchColumns - 가로 방향으로 여유공간이 있는경우, 모두 채워넣는 열을 설정할 수 있습니
2.shrinkColumns - shringColumns는 stretchColumns와 반대로, 특정 열을 부모 컨테이너 폭에 맞추도록 강제로 축소시키는 속성입니 다.
3.layout_column - layout_column속성으로 칼럼의 인덱스를 지정할 수 있습니다.
4.layout_span - layout_span속성은 여러 칼럼에 걸쳐 있도록 만드릭 위한 속성입니다.
직접 구현해보기
fragment_seven.xml
1 2
3 4
5 6
7 8
9
SevenFragment.java
실행 화면
'App > Layout' 카테고리의 다른 글
TabLayout (0) | 2023.12.28 |
---|---|
GridLayout (0) | 2023.12.28 |
ConstraintLayout(계산기 모양 만들어보기) (0) | 2023.12.27 |
RelativeLayout (0) | 2023.12.27 |
FrameLayout (0) | 2023.12.27 |