정상에서 IT를 외치다

[Android, dash line] XML 로 점선 그리기 본문

안드로이드

[Android, dash line] XML 로 점선 그리기

Black-Jin 2018. 7. 12. 15:30
반응형

안드로이드 개발을 할 때 점선이 필요한 경우가 있습니다.


아래는 xml 파일에서 점선을 그리는 코드 입니다.


drawable_dash_line.xml

<?xml version="1.0" encoding="utf-8"?>

<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="line">

<stroke
android:color="#ffff00"
android:width="1dp"
android:dashWidth="10dp"
android:dashGap="10dp"/>

</shape>


이름 ImageView 에 적용시키면 완성됩니다.

<ImageView
android:src="@drawable/drawable_dash_line"
android:layerType="software"
android:layout_width="match_parent"
android:layout_height="1.5dp" />

여기서 주의해야할 사항이 2개 있습니다.


1, layerType 을 software 롤 설정해야 점선이 보입니다.


2. layout_height 값은 점선의 width 보다 큰 값으로 정해야 합니다. wrap_content 도 점선이 안보입니다.




이제 위 코드에 대한 자세한 설명을 해보겠습니다.


먼저 코드를 실행하면 아래와 같은 점선이 나옵니다.


여기서 color 는 점선의 색을 나타냅니다. 현재 위 코드는 노랑색을 나타내는 값입니다.






width 는 선의 두께로 이를 30dp 로 설정 하면




간격은 그대로이지만 두께가 더욱 커집니다.



dashWidth 는 색칠되어 있는 점선의 길이 입니다. 이를 30dp 로 설정하면 아래 그림과 같이 됩니다.





마지막으로 dashGap 은 점들의 간격을 나타냅니다. 역시 이를 30dp 설정 하면 아래 그림과 같이 됩니다.




반응형
Comments