'[Android] - 위젯/위젯 공통'에 해당되는 글 1건

  1. 2017.01.06 위젯 Border 입히기

** 위젯 Border 입히기 **

 

 

1. 정의

    - 위젯(Layout, TextView, EditBox ...)들에게 Border를 줄 수 있다.

    - Border를 줄때 테두리뿐만 아니라  backgounrd, margin등을 설정할 수 있다.

 

2. 개발방법

    2.1 res/drawable/border.xml 파일 생성

    2.2 activity_main.xml 파일에서 border를 입히고 싶은 위젯에 

         [android:background="@drawable/border_calbutton"]설정하면 됨


3. res/drawable/border.xml 파일

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<!-- 설정된 위젯의 background를 설정
1. 아래 body설정 부분에서 전체영역이 설정 되면 이 background는 아무 표시가 안난다.
2. 아래 body설정 부분에서 top, bottom에 2dp씩 설정 되었기에
이 2dp만큼 아래 부분에 설정된 모양(oval)과 색깔(#6a00ff)이 보인다.
-->
<item>
<shape android:shape="oval">
<solid android:color="#6a00ff" />
</shape>
</item>

<!-- 설정된 위젯의 Body를 설정
1. top, bottom 에 2dp 설정
2. shape : body를 사각형으로 설정
3. color : body에 color지정
-->
<item android:top="2dp" android:bottom="2dp">
<shape android:shape="rectangle">
<solid android:color="#eeffffff" />
</shape>
</item>
</layer-list>

 4. activity_main.xml 파일에서 background를 이용해서 설정

     - RelativeLayout에서도 설정할 수 도있고,  button에도 설정할 수 있다.

 <RelativeLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:background="@drawable/border"
android:layout_weight="1">

<Button
android:id="@+id/bt_clear"
android:text="농부지기"
android:layout_marginLeft="30dp"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:background="@drawable/border"/>


</RelativeLayout>
Posted by 농부지기
,