Notice
Recent Posts
Recent Comments
Link
«   2024/10   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
Archives
Today
Total
관리 메뉴

쨍쨍

[Android Studio] 레이아웃 본문

프로그래밍 코드/Android Studio

[Android Studio] 레이아웃

이선선 2023. 5. 16. 18:07
레이아웃 이름 설명
제약 레이아웃 제약 조건을 사용해 화면을 구성하는 방법으로 안드로이드 스튜디오에서
자동으로 설정하는 디폴트 레이아웃
리니어 레이아웃 창고 안에 박스를 쌓을 때 아래에서 위로 쌓는 것 처럼 뷰가 차지하는 영역을 박스라고 보고
한 쪽 방향으로 차례대로 뷰를 추가하여 화면을 구성하는 방법으로
뷰가 차지할 수 있는 사각형 영역을 할당
상대 레이아웃 부모 컨테이너나 다른 뷰와의 상대적 위치로 화면을 구성하는 방법이지만
제약 레이아웃을 사용하게 되면서 상대 레이아웃은 권장하지 않음
프레임 레이아웃 가장 상위에 있는 하나의 뷰 또는 뷰그룹만 보여주는 방법으로
여러개의 뷰가 들어가면 중첩하여 쌓게 됨
가장 단순하지만 여러 개의 뷰를 중첩한 후 각 뷰를 전환하여 보여주는 방식으로 자주 사용
테이블 레이아웃 격자 모양의 배열을 사용하여 화면을 구성하는 방법으로
HTML에서 많이 사용하는 정렬 방식과 유사하지만 많이 사용하지 않음

 

리니어 레이아웃

Do it 안드로이드 앱 프로그래밍

방향을 세로 방향(vertical)으로 설정하여 버튼을 추가할 때 마다 위에서 아래쪽으로 쌓거나 가로 방향(Horizontal)으로 설정하여 왼쪽에서 오른쪽으로 쌓을 수 있다. 맨 오른쪽 그림과 같이 레이아웃 안에 또 다른 레이아웃을 넣을 수 있다. 

 

상대 레이아웃

제약 레이아웃이 사용되기 전에는 상대 레이아웃이 안드로이드 스튜디오가 자동적으로 설정하는 디폴트 레이아웃이였다.

현재 디폴트 레이아웃이 제약 레이아웃으로 바뀐 이유는 제약 레이아웃이 상대 레이아웃의 특징을 다 가지고 있으면서 더 많은 기능을 제공하기 때문이다. 그럼에도 상대 레이아웃은 간단하고 이해하기 쉬운 레이아웃이기에 많이 사용되고 있다.

Do it 안드로이드 앱 프로그래밍

부모 레이아웃과의 상대적 위치 또는 같은   레이아웃 안에 들어 있는 다른 뷰와 상대적 위치를 이용해 화면을 배치한다.

왼쪽 그림 - 상대 레이아웃 속성으로 부모 컨테이너의 위쪽(TOP)에 붙인 것이다.

오른쪽 그림 - 상대 레이아웃의 속성(Right)으로 버튼#1 오른쪽에 버튼#2를 붙인 것이다.

 

프레임 레이아웃 

가장 위에 있는 하나의 뷰만 화면에 보여주고 그 안에 여러 개의 뷰나 뷰그룹을 추가했다면 나머지는 그 아래에 중첩되어 쌓인다. 한 번에 하나의 뷰만 보여주면서 나머지는 보이지 않게 그 아래에 중첩시켜 숨겨두고 특정 뷰를 보이거나 보이지 않도록 하면서 쉽게 뷰를 전환할 수 있다.

Do it 안드로이드 앱 프로그래밍

 

테이블 레이아웃

안에 들어가는 뷰들을 격자 형태로 만들어 주는 레이아웃입니다. HTML에서 사용하는 방식과 유사하여 실용적이지만 제약 레이아웃과 리니아웃만으로도 화면 배치가 가능하기 때문에 자주 사용하지 않는다. 

 

* 스크롤뷰

하나의 뷰나 뷰그룹에 넣을 수 있고, 해당 뷰의 내용물이 넘치면 스크롤을  만들 수 있게 도와준다.