[안드로이드 스튜디오] 레이아웃 - LinearLayout

2015. 1. 19. 21:07·공부/Android

activity_main.xml 파일을 보시면 맨처음에 Relative layout이라고 적혀있을겁니다. 이게 뷰를 표시하는 방법인데요,

레이아웃의 종류에는 Relative , Linear 등등이 있습니다.

리니어 레이아웃 :
리니어 레이아웃은 수직, 수평으로 자식개체를 표시하는 레이아웃입니다. 기본값은 수평으로 자식개체를 표시합니다.

이게 무슨말이냐면 리니어레이아웃 안에 자식객체를 만들 때 이 자식객체들을 가로로 쭉 표시할지 아니면 세로로 쭉 표시할지 하는것입니다.

이 설정은 android:orientation이라는 명령어로 설정 할 수 있는데, vertical과 horizontal이 있습니다.
vertical은 자식들을 수직으로 , horizontal은 자식들을 수평으로 쭉 쌓는 옵션입니다.

 


<vertical과 horizontal>

.. 리니어 레이아웃은 한쪽방향으로만 뷰를 붙힐수 있는 레이아웃입니다. 이 레이아웃은 중첩해서 사용할 수 있는데 중첩해서 원하는 모양의 레이아웃을 만들 수 있습니다.

 

레이아웃 옵션중 너비와 높이를 조정할 수 있는 layout_width 와 layout_height가 있습니다.
이들은 고정길이를 지정해 줄 수 있는 단위인 dp,in,mm,px,sp가 있고 match_parent, wrap_content라는 옵션이 있습니다.

match_parent : 자기의 부모 만큼..; 자기를 감싸고 있는 뷰의 크기 만큼 자리를 차지하겠다.

wrap_content : 자기가 사용한 영역만큼 차지하겠다.

 

★1의 경우 layout_width에 match_parent의 옵션을, 나머지(★2,★3)의 경우 wrap_content를 준 예입니다.

 

in,mm,px은 우리에게 익숙한 단위이지만 dp와 sp는 생소하실겁니다.

먼저 안드로이드기기는 화면이 같은 인치라고 하더라도 기기에 따라 해상도가 다르기 때문에 고정단위로 레이아웃을 만들게 되면 기기에 따라 화면이 다르게 나타납니다. 이를 해결하기 위해 만들어진 것이 dp입니다.

dp는 해상도 밀도에 맞게 크기가 조정되기 때문에 어떤 해상도를 가진 기기에서도 똑같은 크기로 보입니다.

sp는 글자크기에 주로 사용되는 단위입니다.

 

====================================================================================

 

뷰에 여백넣기

뷰에 여백을 넣는 방법에는 margin과 padding이 있습니다.

layout_margin : 바깥 여백
padding : 안쪽 여백

margin****  ,padding*****과 같이 ****부분에 Left,Right,Bottom,Top을 넣어서 각 부분만 여백을 줄 수 도 있습니다.

 

===================================================================================================

 

뷰에 정렬하기

layout_gravity와 gravity 이 두 속성이 사용됨.

layout_gravity는 자기 자신을 움직이는 속성이고 gravity는 자신의 내용물을 움직이는 속성임.

여기 옵션에는 center , center_horizontal (가로만 가운데정렬), center_vertical, top, bottom, start(왼쪽으로),end(오른쪽으로)등의 옵션들이 있고 | 문자를 이용해 두가지 정렬 방식을 동시에 사용 할 수도 있습니다.

* LinearLayout이 horizontal이면 자식뷰의 layout_gravity에 top,center,bottom만 지정 가능.
* vertical이면 start,center,end만 지정 가능

반응형
'공부/Android' 카테고리의 다른 글
  • [안드로이드 라이브러리] PolyPicker(이미지 다중 선택) - NullPointerException 해결방법
  • [안드로이드 스튜디오] 기본 위젯 - TextView/EditText/Button
  • [윈도우8] Gradle 설치하기
  • [윈도우8] 안드로이드 스튜디오 설치하기
JangGiraffe
JangGiraffe
안녕하세요~ 반갑습니다! 머무시면서 즐거운 시간 보내시길 바랍니다. 오픈카톡 : https://open.kakao.com/o/sYEBs0uh
  • JangGiraffe
    giraffe1010
    JangGiraffe
  • 전체
    오늘
    어제
    • 분류 전체보기 (390) N
      • 공부 (155) N
        • AI (3)
        • Spring (10)
        • JAVA (31)
        • python (6)
        • 기타 (12) N
        • 메세지 (3)
        • Jsp,Servlet (4)
        • HTML (12)
        • Javascript (6)
        • C#,ASP.NET (2)
        • WEB (2)
        • DB (11)
        • Android (18)
        • [BaaS]Parse.com (4)
        • 졸업프로젝트 (4)
        • AWS,네이버클라우드플랫폼 (2)
        • Ubuntu (6)
        • maven (1)
        • 자료구조 (15)
        • 서버 (3)
      • 게임 (0)
      • 관심 (22)
        • 사진 (1)
        • 패스오브엑자일(POE) (1)
        • 월드오브워크래프트 (4)
        • 블로그 (7)
        • 이슈 (1)
        • IT (5)
        • 기타 게임 (3)
      • 자료 (2)
        • 면접 (2)
      • 먹거리 (103)
        • 음식리뷰 (99)
        • 카페리뷰 (4)
      • 여행 (35)
        • 국내여행 (23)
        • 해외여행 (12)
      • 생활정보 (68)
        • 생활정보 (33)
        • 상품리뷰 (34)
        • 세미나후기 (1)
      • 끄적끄적 (5)
        • 영화후기 (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 문의(카톡)
    • 방명록
  • 링크

    • 2zino
    • wildbluffer
  • 공지사항

  • 인기 글

  • 태그

    왕십리맛집
    떡볶이
    강원도여행
    강서구맛집
    양양 가볼만한 곳
    홍대맛집
    월드오브워크래프트
    자취
    발산 회식
    발산맛집
    오징어난전
    마곡맛집
    제주도맛집
    와우
    돈벌기
    ChatGPT
    시즈오카
    맛집
    김포맛집
    가양맛집
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
JangGiraffe
[안드로이드 스튜디오] 레이아웃 - LinearLayout
상단으로

티스토리툴바