카테고리 없음

사용자 인터페이스 및 실습 (레이아웃)

chris3471 2024. 11. 1. 09:07
728x90
반응형

1. LinearLayout

   -android:layout_gravity 속성은 뷰를 LinearLayout 영역 내에서 어디에 나타낼지를 설정

      -orientation="vertical"인 경우 -> layout_gravity="center_vertical"이 적용되지않음

       (horizontal인 경우 역시 layout_gravity="center_horizontal"이 적용x)

   -android:gravity 속성은 뷰의 내용을 뷰 영역 내에서 어디에 나타낼지를 설정

 

   -layout_weight : 여백을 이용하기 위해 사용

 

2. RelativeLayout

   -android:layout_above : 기존 뷰의 윗부분에 배치

   -android:layout_below : 기존 뷰의 아랫부분에 배치

   -android:layout_toLeftOf/toRightOf : 기존 뷰의 오른/왼쪽에 배치

 

align 속성 (@id/~값으로 설정)

   -android:layout_alignTop : 기존 뷰와 윗부분을 정렬

   -android:layout_ alignBottom : 기존 뷰와 아랫부분을 정렬

   -android:layout_ alignLeft/Right : 기존 뷰와 왼/오른부분을 정렬

   -android:layout_ alignBaseline : 기존 뷰와 텍스트 기준선을 정렬

 

alginParentXXX 속성 (true값으로 설정)

   -android:layout_alignParentTop : 부모의 윗부분에 뷰의 상단을 위치

   -android:layout_alignParentBottom : 부모의 아랫부분에 뷰의 하단을 위치

   -android:layout_alignParentLeft/Right : 부모의 왼/오른쪽에 뷰의 왼/오른쪽을 위치

   -android:layout_centerHorizontal : 부모의 가로 방향 중앙에 뷰를 위치

   -android:layout_centerVertical : 부모의 세로 방향 중앙에 뷰를 위치

   -android:layout_centerInParent : 부모의 가로세로 중앙에 뷰를 위치

 

3. FrameLayout

   -뷰들을 같은 영역에 겹쳐서 배치할 때 사용

   -여러 뷰를 겹치게 한 다음, 한 순간에 하나의 만 보이기 위함. (visibility속성을 이용)

   -맨 마지막에 포함한 뷰가 가장 위에 보인다.

 

4. GridLayout

   -테이블 구조

 

속성

   -orientation : 뷰의 배치 방향을 지정

   -columnCount : 가로 방향일 때 한 줄에 몇 개의 뷰를 나열할 것인지 지정 (horizontal일때만 이용)

   -rowCount : 세로 방향일 때 한 열에 몇 개의 뷰를 나열할 것인지를 지정 (vertical일때만 이용)

 

   -layout_column : 뷰가 위치할 열 인덱스 지정

   -layout_row : 뷰가 위치할 행 인덱스 지정

   -layout_columnSpan/rowSpan : 가로/세로 방향으로 여러 열/행을 하나의 뷰가 차지하고자 할 때

   -layout_gravity : 하나의 열 내에서 뷰의 정렬 위치 지정

 

=> layout_rowSpan/columnSpan을 사용한 후 layout_gravity="fill"을 해줘야 span으로 확장된 영역 전체를 차지하게 된다.

 

 

728x90
반응형