레이아웃에 뷰를 추가하면, 기본적으로 뷰는 나머지 공간을 모두 채울수도, 위치를 지정할 수 도 있다. 하지만 여유공간을 모두 채우면, 뷰가 서로 달라붙거나, 텍스트가 꽉차보여 구성이 이상해질 수 도 있다.
뷰는 바깥공간과 안쪽 공간이 있고, 일반적으로 모든 공간을 포함한 부분을 셀 이라고 한다. 일반적으로 버튼, 텍스트뷰를 위젯이라고 부르기 때문에, 위젯 셀이라고도 한다. 뷰의 바깥쪽 공간을 Margin이라고 하고, lay_out_margin속성으로 간격을 지정할 수 있다. 테두리 안쪽을 Padding이라고 부르며, padding속성을 이용해서 설정할 수 있다.
아래와 같이 TextView세개를 만들고 Padding을 실험해 보자. 디폴트를 보면, layout_width가 wrap_content로 되어있어 거의 꽉차는듯한 모습을 볼 수 있다.
가장 왼쪽에 있는 텍스트 뷰의 패딩값을 4방위 20dp로 지정해보자. 그러면 아래와 같이 뷰 테두리와 컨텐츠 사이에 공간이 생기는것을 볼 수 있다.
이번에는 margin값을 실험해 보자. Margin은 결론적으로 해당 위젯셀이 레이아웃 내에서 차지할 공간을 의미해 주는 값이다. 가운데 텍스트뷰에 margin값을 15씩 지정해주자
위 사진과 같이 바깥 부분의 여백이 생기게 되었다. 그렇기 때문에 왼쪽, 오른쪽 뷰와 간격이 생기는것을 볼 수 있다. 이번에는 가운데 뷰의 margin, padding의 right 값들을 50,80씩늘려보자
그럼 위와 같이 오른쪽에 있는 레이아웃이 할당될 수 있는 레이아웃이부족해져 아래로 밀리는것을 볼 수 있다. 이러한 부분에 있어 padding, margin값을 지정할때 주의를 해야한다.
'Android' 카테고리의 다른 글
[Android] 텍스트를 클립보드에 복사하기 (0) | 2022.03.27 |
---|---|
[Android] Table Layout (0) | 2022.03.26 |
[Android] 뷰 정렬하기 (0) | 2022.03.26 |
[Android] 소스코드를 이용해서 버튼 생성하기 (0) | 2022.03.23 |
[Android] 간단한 버튼 레이아웃 만들기 (0) | 2022.03.20 |