0101011001010111

3-2 Android UI - Layout _Table Layout 본문

Kotlin/안드로이드_[입문]앱개발

3-2 Android UI - Layout _Table Layout

[진주] 2023. 8. 14. 02:49
728x90
반응형

강의 6분 20초부터~

 

Table Layout

자식(Children) View위젯들을 테이블(행과 열로 구성)로 나누어 표시하는 Layout클래스

표를 구성하는 행의 개수만큼 TableRow를 포함하고, TableRow는 각 행에 포함된 셀(View)을 포함한다.

 

(사용되는곳은 뭐 키패드라든지... ? 계산기 패드라든지? 그런곳 )

 

주요 속성

  • stretchColumns : 늘릴 열을 지정(인텍스는 0부터 시작 됨)

" * " : 모든 열을 늘여서 배치한다

"1,2" : 1열 (왼쪽에서 2번째)과 2열 (왼쪽에서 3번째)를 늘여서 배치한다.

 

TableRow

 - 정해진 규칙에 따라 크기가 결정되므로 layout_width/height를 지정할 필요가 없다.

layout_height는 항상 wrap_content

layout_width는 항상 match_parent

 

 

써봤는데, 버튼이 늘수록 앞에 버튼 사이즈가 줄어든다.

왜그럴까?

그리고 계속 버튼을 추가해보니 옆에 계속해서 생긴다 ( 화면에 안나오더라두 짤려서..)

 

또 특이한 점은, 줄이 다르더라도 각각 똑같은 크기를 유지한다.

 

 

 

테이블 레이아웃은 실무에서도 거의 쓸일 없는 레이아웃이라고 하셨다.

그래도 이런게 있다~ 정도는 알아두어야 하니까,

 

 

앗 !!! 이런것이 있었군 !!

 

(도망) 

 

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

<TableLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:stretchColumns="0">
    <TableRow>
        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Button1"/>
        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Button1"/>
        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Button1"/>
        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Button1"/>
        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Button1"/>

    </TableRow>
    <TableRow>
        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Button5"/>
        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Button6"/>
    </TableRow>


</TableLayout>

</androidx.constraintlayout.widget.ConstraintLayout>

 

 

728x90
반응형