1. Shape Drawable
Shape Drawable을 이용해 XML로 도형을 그릴 수 있다.
shape 속성으로는 rectangle(직사각형), oval(타원), line(선), ring(고리)이 있다.
- <stroke>태그: 테두리 선 설정
- <width> 태그: 선의 굵기 설정
- <color> 태그: 선의 색상 설정
- <solid> 태그: 도형의 안쪽 설정
2. 실행 화면
3. drawable/rectangle.xml
1 2 3 4 5 6 7 8 9 | <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <size android:width="200dp" android:height="120dp"/> <stroke android:width="2dp" android:color="#000000"/> <solid android:color="#FFEF60"/> <padding android:bottom="1dp"/> </shape> | cs |
4. drawable/gradient.xml
1 2 3 4 5 6 7 8 9 10 11 12 13 | <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"> <gradient android:startColor="#FF5500" android:centerColor="#00FF55" android:endColor="#0055FF" android:angle="90" android:centerY="0.5"/> <corners android:radius="2dp"/> </shape> | cs |
5. drawable/layer_list.xml
<layer-list> 태그를 이용해 여러 그래픽을 하나의 XML 파일에 넣을 수 있다.
<item> 태그가 여러 개 들어갈 수 있으며, <item> 태그 안에는 <shape> 태그가 들어갈 수 있어 각각의 도형으로 정의할 수 있다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | <?xml version="1.0" encoding="utf-8"?> <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item> <shape android:shape="rectangle"> <stroke android:width="4dp" android:color="#A0A0F0"/> <solid android:color="#00000000"/> </shape> </item> <item android:top="4dp" android:bottom="4dp" android:right="4dp" android:left="4dp"> <shape android:shape="rectangle"> <stroke android:width="5dp" android:color="#440000"/> <solid android:color="#00000000"/> </shape> </item> </layer-list> | cs |
6. activity_main.xml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" xmlns:app="http://schemas.android.com/apk/res-auto" tools:context="com.tistory.qlyh8.pracitice.MainActivity" android:orientation="vertical" android:layout_margin="10dp"> <View android:layout_width="match_parent" android:layout_height="0dp" android:layout_marginTop="10dp" android:layout_marginBottom="10dp" android:background="@drawable/rectangle" android:layout_weight="1"/> <View android:layout_width="match_parent" android:layout_height="0dp" android:layout_marginTop="10dp" android:layout_marginBottom="10dp" android:background="@drawable/gradient" android:layout_weight="1"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/layer_list" android:text="Button" android:layout_gravity="center" /> </LinearLayout> | cs |
출처: https://www.edwith.org/boostcourse-android/lecture/20421/
'Android' 카테고리의 다른 글
ScrollView (스크롤뷰) (0) | 2018.04.28 |
---|---|
Table Layout (테이블 레이아웃) (0) | 2018.04.28 |
Drawable (드로어블) - StateListDrawable (0) | 2018.04.27 |
Drawable (드로어블) (0) | 2018.04.27 |
adMob - (4) 전면 광고 달기 (0) | 2018.03.03 |