안드로이드 With Java #3 View 크기
dp
와 같은 단위를 이용하여 숫자로 지정현재 위와 같이 텍스트 View를 하나 만든 상태이다. layout_width
는 200dp
로 설정되어 있는데, 이 200dp
를 wrap_content
로 바꿔보면 다음과 같이 변환된다.
이렇게 안의 내용물을 딱 감쌀정도의 크기가 된다.
위는 가로세로를 전부 wrap_content
로 바꾸었을 때이다.
위의 LinearLayout
이 현재 TextView
의 부모다. LinearLayout
의 부모는 디바이스 그 자체이다. 그래서 LinearLayout
의 match_parent
는 디바이스의 크기만큼 영역을 사용하겠다는 의미가 된다.
만일, TextView
의 가로 세로를 match_parent
로 바꾼다면?
위와 같이 전체 화면을 채우는 상태로 변했다.
Margin
은 부모 뷰로부터 일정 거리만큼 띄어주기 위해 사용되는 속성이다. 임의의 TextView
를 만들고 marginLeft
를 30dp
만큼 준다면 다음과 같이 보일 것이다.
TextView
의 부모인 LinearLayout
을 기준으로 왼쪽에서 30dp
만큼 떨어져있다.
위는 모든 4방향의 Margin
에 30dp
의 간격을 준 모습이다. marginTop
까지는 실제적인 시각적 변화를 보였지만, marginRight
, marginBottom
은 이미 그 이상의 간격이 떨어져 있기에 아무런 변화도 보이지 않았다.
임의의 TextView
를 하나 더 만들어 Padding
을 테스트해본다.
위는 paddingLeft
와 paddingRight
를 각각 30dp
씩 준 것이다. margin
과의 차이는 margin
은 부모 컴포넌트로부터 자식 컴포넌트를 떨어뜨리려 할 때 이용됐고, padding
은 컴포넌트의 내용물을 컴포넌트의 경계선에서 떨어뜨리려 할 때 이용됐다.
padding- Left, Right, Top, Bottom
은 padding
을 이용하면 한번에 변화시킬 수 있다.