#6 안드로이드 레이아웃

2019. 4. 17. 22:54Develop/Android

레이아웃 종류

이름 설명

ConstraintLayout

(제약 레이아웃)

제약 조건을 이용하여 화면을 구성함

LinearLayout

(리니어 레이아웃)

한 쪽 방향으로 차례대로 뷰를 추가하여 화면을 구성함

RelativeLayout

(상대 레이아웃)

부모 컨테이너나 다른 뷰와의 상대적 위치로 화면을 구성함

FrameLayout

(프레임 레이아웃)

가장 상위에 있는 하나의 뷰 또는 뷰그룹만 보여줌

TableLayout

(테이블 레이아웃)

격자 모양의 배열을 사용하여 화면을 구성함

 

스크롤뷰 (ScrollView)

하나의 뷰나 뷰그룹을 넣을 수 있고 포함하고 있는 내용물이 디바이스 화면에서 넘치면 스크롤을 만들어 줌

 

뷰 정렬 속성

속성 설명
layout_gravity 부모 컨테이너의 여유 공간 안에서 뷰를 정렬함
gravity 뷰 안에 표시하는 내용물을 정렬함

 

gravity 속성 값

속성 값 설명
top 객체를 위쪽 끝에 배치
bottom 객체를 아래쪽 끝에 배치
left 객체를 왼쪽 끝에 배치
right 객체를 오른쪽 끝에 배치
center_vertical 객체를 수직 방향의 중앙에 배치
center_horizontal 객체를 수평 방향의 중앙에 배치
fill_vertical 객체를 수직 방향으로 여유 공간만큼 확대하여 채움
fill_horizontal 객체를 수평 방향으로 여유 공간만큼 확대하여 채움
center 객체를 수직, 수평 방향의 중앙에 배치
fill 객체를 수직, 수평 방향으로 여유 공간만큼 확대하여 채움
clip_vertical 객체의 상하 길이가 여유 공간보다 클 경우 남는 부분을 잘라냄
clip_horizontal 객체의 좌우 길이가 여유 공간보다 클 경우 남는 부분을 잘라냄

 

부모 컨테이너를 이용한 뷰 배치 속성

속성 설명
layout_alignParentTop 부모 컨테이너의 위쪽과 뷰의 위쪽을 맞춤
layout_alignParentBottom 부모 컨테이너의 아래쪽과 뷰의 아래쪽을 맞춤
layout_alignParentLeft 부모 컨테이너의 왼쪽과 뷰의 왼쪽을 맞춤
layout_alignParentRight 부모 컨테이너의 오른쪽과 뷰의 오른쪽을 맞춤
layout_centerHorizontal 부모 컨테이너의 수평 방향 중앙에 배치
layout_centerVertical 부모 컨테이너의 수직 방향 중앙에 배치
layout_centerInParent 부모 컨테이너의 수평, 수직 방향 중앙에 배치

 

다른 뷰를 이용한 뷰 배치 속성

속성 설명
layout_above 지정한 뷰의 위쪽에 배치
layout_below 지정한 뷰의 아래쪽에 배치
layout_toLeftOf 지정한 뷰의 왼쪽에 배치
layout_toRightOf 지정한 뷰의 오른쪽에 배치
layout_alignTop 지정한 뷰의 위쪽과 맞춤
layout_alignBottom 지정한 뷰의 아래쪽과 맞춤
layout_alignLeft 지정한 뷰의 왼쪽과 맞춤
layout_alignRight 지정한 뷰의 오른쪽과 맞춤
layout_alignBaseline 지정한 뷰와 내용물의 아래쪽 기준선을 맞춤