안드로이드 정리노트 #6 안드로이드 레이아웃
(Android Layout:Relative Layout)
@Relative Layout
- 다른 뷰나 부모 컨테이너간의 상대적인 위치를 통해 뷰들을 배치하는 layout
- <예시>
- 4개의 버튼을 담은 레이아웃을 만든다. 각각의 버튼은 부모 컨테이너의 상대적인 관계를 이용하여 배치했다.
- 또한, 다른 버튼의 상대적인 위치를 이용해 버튼의 위치를 배치한 버튼도 있다.
- <xml코드>
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<Button
android:id="@+id/button"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="1번버튼"
android:layout_below="@id/button3"/>
<Button
android:id="@+id/button2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text="2번버튼" />
<Button
android:id="@+id/button3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:text="3번버튼"/>
<Button
android:id="@+id/button4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:text="4번버튼"/>
</RelativeLayout>
- 첫 번째 버튼의 경우, layout_below의 속성값을 세 번째 버튼으로 줌으로써, 세 번째 버튼의 아래(below)에 위치하게 된다. 위에 배치하고 싶은 경우 below대신에 above를 사용하면 된다.
- 세 번째 버튼의 경우, 부모 컨테이너와의 관계에서 Right를 true를 줌으로써, 부모 컨테이너 우측에 붙게 된다.
- 두 번째 버튼의 경우, 부모 컨테이너와의 관계에서 center를 true를 줌으로써, 부모 컨테이너 중앙에 위치하게 된다. 다른 속성으로는 centerInVertical(수직방향 중앙에 붙음), centerInHorizontal(수평방향 중앙에 붙음)이 있다.
- 네 번째 버튼의 경우, centerHorizontal를 줌으로써, 수평방향의 중앙에 버튼이 위치하게 된다.
- 위와 같이 부모컨테이너와의 관계 혹은 다른 뷰들의 상대적인 관계등을 이용하여 배치하는 레이아웃이 RelativeLayout이다.
반응형
'▶개발 > Android' 카테고리의 다른 글
안드로이드12 상태바/내비바 배경, 아이콘 색상 설정 (0) | 2022.04.07 |
---|---|
[Android] 안드로이드 액티비티 전환과 부가데이터(Intent) (0) | 2018.10.08 |
[Android] 안드로이드 레이아웃:Frame Layout (0) | 2018.10.03 |
[Android] 안드로이드 레이아웃:Linear Layout (0) | 2018.10.03 |
[Android] 안드로이드 뷰 정렬(Gravity) (0) | 2018.10.02 |