테이블 레이아웃 (TableLayout)
테이블 레이아웃은 격자 모양으로 뷰를 배치할 때 사용합니다.
리니어 레이아웃 안에 리니어 레이아웃을 넣는 방식을 사용해도 격자 모양을 만들 수 있지만 테이블 레이아웃을 사용하면 좀 더 쉽게 만들 수 있습니다.
테이블 레이아웃에서 각각의 행은 <TableRow> 태그를 이용해 추가할 수 있습니다.
그리고 그 안에 몇 개의 뷰를 추가하는가에 따라 열의 개수가 결정됩니다.
여러 개의 <TableRow>가 추가될 수 있고 각각의 <TableRow> 안에는 여러 개의 뷰가 들어갈 수 있는 구조로 되어 있는 거죠.
두 개의 행이 있고 각각의 행에 두 개의 버튼이 들어있는 2X2 모양의 격자를 만들고 싶다면 다음과 같은 코드를 사용할 수 있습니다.
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<TableRow
android:layout_width="match_parent"
android:layout_height="match_parent" >
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button1" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button2" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="match_parent" >
<Button
android:id="@+id/button3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button3" />
<Button
android:id="@+id/button4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button4" />
</TableRow>
</TableLayout>
리니어 레이아웃 안에 리니어 레이아웃을 포함시키는 방식으로 격자 모양을 만들었을 때 테이블 레이아웃과 다른 점은 어떤 것이 있을까요?
Q.리니어 레이아웃 안에 리니어 레이아웃을 포함시키는 방식으로 격자 모양을 만들었을 때 테이블 레이아웃과 다른 점은 어떤 것이 있을까요?
리니어 - 배치가 까다롭지만 자유롭다.
테이블 - 배치가 간편하지만 제약적이다.
최근댓글