*Magin과 Padding의 차이점과 사용방법
안드로이드 개발시 위젯을 위치할 때, margin과 padding을 사용하여 임의의 수치만큼 여백을 둘 수 있다.
margin 과 padding의 사용되는 상황을 아래 그림으로 살펴본다.
위 그림을 보면 주황색의 TextView 위젯이 놓여져있다. 그 뒤에는 초록색의 부모 레이아웃이 위치한다.
Margin : 위젯(여기서는 TextView)이 부모 레이아웃의 테두리로부터의 여백을 말한다. android:layout_marginTop, android:layout_marginBottom, android:layout_margin_left, android:layout_marginRight 의 속성으로 상하좌우의 여백을 각각 지정할 수 있다.
Padding : 위젯(여기서는 TextView) 테두리로부터 위젯 안에의 내용(여기서는 text)사이의 여백을 말한다. android:paddingTop, android:paddingBottom, android:paddingLeft, android:paddingRight 의 속성으로 상하좌우의 여백을 각각 지정할 수 있다.
아래 에제 소스로 확인 해본다.
* activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<!--margin, padding 적용전-->
<!--상하좌우에 여백이 전혀없다-->
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="margin, padding 적용전"
android:textColor="#000000"
android:background="#ff77ff" />
<!--margin만 적용한 예-->
<!--부모레이아웃과 TextView 위젯에 20dp의 여백을 가진다.-->
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="20dp"
android:text="margin만 적용한 예"
android:textColor="#000000"
android:background="#ff7777"/>
<!--padding만 적용한 예-->
<!--TextView의 테두리로부터 text의 사이에 20dp의 여백을 가진다.-->
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="20dp"
android:text="padding만 적용한 예"
android:textColor="#000000"
android:background="#7777ff"/>
<!--margin과 padding 모두 적용한 예-->
<!--부모레이아웃과 TextView 위젯에 20dp의 여백을 가진다.-->
<!--TextView의 테두리로부터 text의 사이에 20dp의 여백을 가진다.-->
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="20dp"
android:padding="20dp"
android:text="margin과 padding 모두 적용한 예"
android:textColor="#000000"
android:background="#77ffff" />
</LinearLayout>
아래는 위 소스의 실행화면이다.
'프로그래밍 > 안드로이드' 카테고리의 다른 글
안드로이드 스튜디오 설치하는 방법 (0) | 2017.11.20 |
---|---|
[안드로이드] TTS(TextToSpeech) 음성출력 사용하기 (6) | 2017.08.26 |
[안드로이드] ActionBar에서 Tab, ViewPager 사용하기 (2) | 2017.08.24 |
[안드로이드] ImageView에 Bitmap 최적화 로딩하기 - OutOfMemoryError 처리 (1) | 2017.08.23 |
[안드로이드] ImageView scaleType 속성별 차이 예제 (4) | 2017.08.22 |
댓글