l Padding, layout_margin 속성
- Padding: 레이아웃과 레이아웃 사이의 간격
- Margin: 위젯과 위젯 사이의 간격
| padding
새 위젯이 레이아웃의 경계선에 딱 붙어 있으면 답답해 보인다. 레이아웃에 padding 속성을 사용해보자
Padding은 상화좌우 모두에 지정하는 속성이다. 따로 지정하고 싶으면 paddingTop, paddingBottom, paddingLeft, paddingRight를 이용한다.
android:padding="30dp
LinearLayout에 지정된 padding 속성 때문에 그 안의 요소들이 경계선에서 30dp만큼 떨어져서 출력되었다.
이와 달리 위젯과 위젯사이에 여유를 두고 싶다면 layout_margin 속성을 사용한다.
Layout_margine은 상화좌우 모두에 지정하는 속성이다. 따로 지정하고 싶으면 layout_marginTop, layout_marginBottom, layout_marginLeft, layout_marginRight를 이용한다.
android:layout_margin="20dp"
l visibility 속성
visibility 속성은 위젯을 보일 것인지 여부를 결정한다. 세 가지 값을 지정할 수 있는데 디폴트는 visible로 보이는 상태이다. invisible과 gone은 안보이는 상태인데, invisible은 보이지 않을 뿐 자리를 유지하지만 gone은 자리까지 보이지 않는다.
| 정리
- visible : 보이는 상태
- invisible : 보이지 않는데 자리는 유지
- gone : 보이지도 않고 자리도 없음.
테스트를 하기 위해 버튼 4개를 만들어보자
| 버튼 4개 소스코드
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"
android:orientation="vertical">
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="버튼1"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="버튼2"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="버튼3"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="버튼4"/>
</LinearLayout>
| 결과
| 버튼2: invisible 버튼3: gone 적용
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"
android:orientation="vertical">
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="버튼1"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="버튼2"
android:visibility="invisible"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="버튼3"
android:visibility="gone"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="버튼4"/>
</LinearLayout>
| 결과
[관련 게시글]
[Android] 안드로이드 스튜디오 설치 : https://seul96.tistory.com/58 [Android] 바람개비 회전 애니메이션 : https://seul96.tistory.com/62 [Android] 화면터치 시 이미지 따라오기 : https://seul96.tistory.com/310 [Android] 그림 글 배치 : https://seul96.tistory.com/63 [Android] 글의 목록 만들기 : https://seul96.tistory.com/311 [Android] manifests, java, res / 레이아웃 유형 : https://seul96.tistory.com/64 [Android] toast 배경색 변경 방법 + 색상표 : https://seul96.tistory.com/65 [Android] 계산기 구현 : https://seul96.tistory.com/66 [Android] 위치 배열 gravity linear layout relative layout 사용 : https://seul96.tistory.com/67 [Android] 액티비티 전환 intent 예시 + 4대 컴포넌트 : https://seul96.tistory.com/68 [Android] 이벤트 처리와 액티비티간 이동 : https://seul96.tistory.com/70 [Android] 리스트뷰 : https://seul96.tistory.com/79 [Android] 커스텀 리스트뷰 : https://seul96.tistory.com/80 [Android] 안드로이드 공공데이터(API) 사용하는 방법 : https://seul96.tistory.com/85 [Android] Padding/layout_margin, visibility 속성 : https://seul96.tistory.com/312 |
'JAVA > Android' 카테고리의 다른 글
Andorid Studio Install (2) | 2021.12.21 |
---|---|
[Android] 명화의 목록 만들기 (0) | 2021.09.16 |
[Andorid] follow me (화면 터치 시 이미지 따라옴) (0) | 2021.09.16 |
안드로이드 개발 - 공공데이터 사용(API) (0) | 2019.06.08 |
[Android] Custom Listview 사용 (0) | 2019.06.02 |
댓글