본문 바로가기

FrontEnd/Android 기초

[Android] 리니어레이아웃 (LinearLayout)

반응형

안드로이드 리니어레이아웃. (Android LinearLayout)

 

  안드로이드에서 UI 화면을 구성할 때, View 위젯의 배치를 위한 컨테이너 역할을 하는 ViewGroup인 Layout 클래스는 그 종류가 매우 다양하다.LinearLayout, RelativeLayout, FrameLayout을 포함하여, 용도에 따라 다양한 기능을 가진 Layout 클래스가 수십 가지가 존재한다.

(레이아웃: 뭔가를 담는 그릇)

 

  하지만 그 중에서 가장 많이 사용되는 Layout은 LinearLayout 이다. 이는 LinearLayout이, 사용이 간편하고 표시 형태가 직관적이라는 장점을 가졌기 때문이기도 하지만, 무엇보다 사각형 박스 형태의 디스플레이 화면에 UI 요소들을 일렬로 배치할 수 있어서 안정감있는 화면 구성이 가능하기 때문이다.

 

xml 코드:

 
android:orientation="vertical"

  리니어 레이아웃에서 꼭 기억해야 할 속성은 android:orientation이다. 이 속성에는 vertical과 horizontal를 지정할 수 있으며, 전자는 뷰들을 수직으로 배치하는 것이며, 후자는 뷰들을 수평으로 배치하는 것이다.

 

가중치(weight)를 이용한 영역 분할 

 

  layout_weight는 말 그대로 레이아웃의 가중치를 지정하는 속성이다. 이속성은 이 속성을 가진 뷰를 포함하고 있는 상위 뷰에서 뷰들의 배치 비율을 정하는 데 중요한 역할을 한다. 

 

  layout_weight 속성을 사용할 때 주의할 점은 orientation 속성에 의해 결정된 방향에 따라, layout_width 또는 layout_height 속성 값이 "0dp"로 설정되어야 정확히 의도하는 결과가 표시된다.

 

xml 코드:

 
android:layout_weight="1"

 > 소수점 단위 사용 가능. (예. 1.2)

 > 특정 단위가 아닌 전체에 대한 비율의 개념으로 사용.

 > 지정하지 않았을 때의 기본 값은 0. (내용만큼의 크기 차지.)

 > 가중치가 적용되는 방향(width 또는 height)의 값이 "0dp"이어야 함.

 

예제:


반응형