달력

12

« 2019/12 »

  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  •  
  •  
  •  
  •  

3행 3열/4열의 수평 그리드 레이아웃

   

   

강의 내용

activity_main.xml

LinearLayout(Vertical) 변경

Graphical Layout > Form Widgets-TextView 추가

Graphical Layout > Layouts-GridLayout 추가

-android:columnCount="3"

-android:rowCount="3"

-Graphical Layout > Form Widgets-Button추가 X7

   

Graphical Layout > Form Widgets-TextView 추가

Graphical Layout > Layouts-GridLayout 추가

-android:columnCount="4"

-Graphical Layout > Form Widgets-Button추가 X7

  

AndroidManifest.xml

<uses-sdk android:minSdkVersion="14"

   

   

AndroidManifest.xml 수정

GridLayout은 API 14(안드로이드 4.0)부터 사용 가능하기 때문에 AndroidManifest.xml의 min SDK버전을 14이상으로 설정해줘야 사용가능합니다.

이하 버전일 경우 인스톨이 되지 않고 에러가 납니다. 인스톨이 되었어도 기능사용시 에러남

   

   

   

 

   

출력 결과

   

Posted by codedragon codedragon

댓글을 달아 주세요

   

GridLayout 

GridLayout

격자 모양의 표을 만들 수 있는 레이아웃.

GridLayout은 API 14(안드로이드 4.0)부터 사용 가능하기 때문에 AndroidManifest.xml의 minSdkVersion을 14이상으로 설정해줘야 사용 가능합니다.

이하 버전일 경우 인스톨이 되지 않고 에러가 납니다. 인스톨이 되었어도 기능사용시 에러가 날 수 있습니다.

   

AndroidManifest.xml

<uses-sdk

android:minSdkVersion="14"

android:targetSdkVersion="19" />

   

   

GridLayout 태그에 지정하는 속성

속성

설명

orientation

배치의 방향을 지정.

가로(vertical) 우선, 세로(horizontal) 우선으로 지정할 수 있으며 디폴트는 horizontal

columnCount

최대 열 개수를 지정.

한 행이 이 개수를 초과하면 아래 행으로 자동 개행.

rowCount

최대 행 개수를 지정.

한 열이 이 개수를 초과하면 오른쪽 열로 자동 개행.

alignmentMode

차일드 정렬의 기준을 지정.

alignBounds이면 차일드의 외곽을 기준으로 하며

alignMargins이면 마진을 기준으로 합니다.

디폴트 alignMargins.

columnOrderPreserved

열의 경계를 인덱스의 오름차순으로 배치

rowOrderPreserved

행의 경계를 인덱스의 오름차순으로 배치

useDefaultMargins

차일드 뷰의 레이아웃에 별다른 지정이 없으면 차일드의 속성을 참조하여 계산한 디폴트 마진을 사용합니다.

이 값이 false이면 마진은 0으로 처리되어 차일드끼리 밀착합니다.

   

   

GridLayout 하위 태그에 지정하는 속성

속성

설명

layout_column

차일드가 배치될 셀의 열 좌표를 지정.

디폴트 UNDEFIED 차일드 순서에 따라 자동 계산

layout_row

차일드가 배치될 셀의 행 좌표를 지정.

디폴트 UNDEFIED 차일드 순서에 따라 자동 계산

layout_columnSpan

차일드가 차지할 열 수를 지정.

디폴트는 1

layout_rowSpan

차일드가 차지할 행 수를 지정.

디폴트는 1

layout_gravity

열 내에서의 차일드 정렬 방식을 지정.

디폴트 LEFT|BASELINE

   

   

Posted by codedragon codedragon

댓글을 달아 주세요

컨테이너 종류

구분

설명

LinearLayout

박스 모델, 즉 위젯이나 다른 하위 컨테이너가 가로나 세로 방향으로 하나씩 차례로 정렬되는 레이아웃을 지원합니다..

RelativeLayout

자식 뷰들을 상대적인 관계에 따라 배치됩니다.

FrameLayout

여러 자식 뷰들을 겹쳐서 그리고자 할 때 사용하는 레이아웃. 이 레이아웃은 여러 이미지들을 같은 영역에 표시하고자 할 때 사용합니다.

TableLayout

자식 뷰들을 열과 행으로 조직화된 표 형태로 배치합니다.

GridLayout

격자 모양의 표을 만들 수 있는 레이아웃

   

   

Layout 속성

layout_width

fill model 속성으로 넓이 채우기

layout_height

fill model 속성으로 높이 채우기

orientation

방향 설정

padding

여유공간 설정

weight

공간의 가중치 값 설정

layout_gravity

   

부모 컨테이너의 여유 공간에 있는 뷰를 정렬할 때

gravity

뷰에서 표시하는 내용물을 정렬할 때

   

gravity 속성 값

top

buttom

left

right

center_vertical

center_horizontal

fill_vertical

fill_horizontal

center

fill

clip_vertical

clip_horizontal

  

   

 

margin 과 padding

margin

뷰와 부모 사이에 적용되며 패팅은 뷰와 내용물 사이에 적용됩니다.

padding

뷰와 내용물간의 간격을 지정합니다.

버튼의 경우 버튼 내부의 문장과 버튼 테두리와의 간격이 패딩이며 레아웃의 경우 차일드 뷰와의 간격이 패딩이 됩니다.

 

 

   

   

Posted by codedragon codedragon

댓글을 달아 주세요