안드로이드 레이아웃

k_hyun·2023년 1월 28일
0

레이아웃

레이아웃은 뷰 객체를 포함하는 그릇 역할을 한다.
대표적으로 5개의 레이아웃 클래스가 존재한다.

LinearLayout

선형으로 배치하는 레이아웃

orientation

뷰의 배치 방향을 수평, 수직으로 배치해 나간다.

layout_weight

빈 여백을 채우는데 사용한다.
layout_weight이 없다면 2개의 버튼 오른쪽에 빈 칸이 존재할 것이다.
외에도 여러개의 뷰에 layout_weight을 줌으로써 비율을 맞춰 여백을 채울 수 있다.

gravity

뷰를 정렬하는 속성이다.


gravity는 텍스트 뷰의 콘텐츠인 text가 적용되었다.
layout_gravity는 뷰 자체를 정렬하는 속성이다.

레이아웃에 gravity를 줌으로써 콘텐츠인 텍스트뷰를 중앙으로 정렬할 수 있다.

RelativeLayout

상대 위치로 배치하는 레이아웃


id를 참고하여 위치, 정렬을 수정할 수 있다.

FrameLayout

뷰를 겹쳐서 배치하는 레이아웃


visibility를 활용하여 주로 사용된다.

GridLayout

행과 열로 구성된 테이블 화면을 만드는 레이아웃

columnCount, rowCount



열, 행의 개수를 지정할 수 있는 속성이다.

뷰의 위치, 크기 조정 및 병합

버튼 C의 위치를 1행 1열로 이동하였다.

버튼E의 여백을 채울 수 있도록 길이를 늘린다.

A가 위, 아래로 2칸씩 차지하도록 하였다. fill을 사용하지 않으면 적용되지 않는다.

ConstraintLayout

수작업으로 뷰를 작업하는 레이아웃이다.

뷰를 배치할 때 제약 조건을 주어야 한다.

0개의 댓글