(앞으로는 속성의 android: 접두어를 생략하도록 하겠습니다.
강좌에서는 생략하더라도 코드를 작성할 때는 꼭 써야 한다는 거 아시죠?)
안녕하세요. 오늘은 layout_margin과 padding에 대해 배워보겠습니다.
일단 둘 다 여백을 지정하는 속성인데요, 무슨 차이가 있을까요?
한번 TextView에 layout_margin을 적용해보겠습니다.
TextView 자체가 자신을 감싸고 있는 LinearLayout으로부터 10dp만큼 떨어집니다.
이번엔 padding을 적용해볼까요?
움직이지 않는 대신 크기가 커짐으로써 내용물과의 여백을 유지하고 있습니다.
레이아웃도 비슷합니다.
LinearLayout에 layout_margin을 적용해보겠습니다.
LinearLayout이 화면으로부터 10dp 멀어지죠.
이번엔 padding을 적용해보겠습니다.
역시 TextView와 마찬가지로 LinearLayout은 움직이지 않고 내용물이 이동했습니다.
둘의 차이 잘 아시겠죠?
layout_margin : 바깥 여백
padding : 안쪽 여백
참고로 이런 식으로 네 방향 따로따로 여백을 지정하는 게 가능합니다.
padding의 경우도 마찬가지구요.
그런데 한 가지 의문점이 있습니다.
둘 다 margin, padding이라 하면 되는데, 왜 하나는 layout_이 붙고 하나는 안 붙었을까요?
안드로이드에서는 부모 레이아웃과 연루(?)될 수 있는 속성에 layout_ 접두어를 붙입니다.
즉, margin은 부모 레이아웃 안을 돌아다니기 때문에 layout_ 접두어가 붙었지만
padding은 자기 자신 안에서만 이루어지기 때문에 붙지 않은 것입니다.
이는 다음 시간에 배울 'layout_gravity와 gravity의 차이'를 보면 더 잘 이해되실 겁니다.
그럼 다음 편에서 봅시다~