效果图:
代码实现:
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">
<!-- 显示一条虚线 开始 -->
<TextView
android:layout_width="match_parent"
android:layout_height="30dp"
android:layout_marginLeft="50dp"
android:layout_marginRight="50dp"
android:layout_marginTop="40dp"
android:gravity="center"
android:text="一条虚线"/>
<View
android:layout_width="match_parent"
android:layout_height="2dp"
android:layout_marginLeft="50dp"
android:layout_marginRight="50dp"
android:background="@drawable/style1" />
<!-- 显示边框虚线 开始 -->
<TextView
android:layout_width="match_parent"
android:layout_height="30dp"
android:layout_marginLeft="50dp"
android:layout_marginRight="50dp"
android:layout_marginTop="40dp"
android:background="@drawable/style2"
android:gravity="center"
android:text="边框虚线"/>
<!-- 显示边框实线 开始 -->
<TextView
android:layout_width="match_parent"
android:layout_height="30dp"
android:layout_marginLeft="50dp"
android:layout_marginRight="50dp"
android:layout_marginTop="5dp"
android:background="@drawable/style3"
android:gravity="center"
android:text="边框实线"/>
<!-- 显示边框圆角虚线 开始 -->
<TextView
android:layout_width="match_parent"
android:layout_height="30dp"
android:layout_marginLeft="50dp"
android:layout_marginRight="50dp"
android:layout_marginTop="40dp"
android:background="@drawable/style4"
android:gravity="center"
android:text="圆角虚线"/>
<!-- 显示边框圆角实线 开始 -->
<TextView
android:layout_width="match_parent"
android:layout_height="30dp"
android:layout_marginLeft="50dp"
android:layout_marginRight="50dp"
android:layout_marginTop="5dp"
android:background="@drawable/style5"
android:gravity="center"
android:text="圆角实线"/>
<!-- 显示边框部分圆角1 开始 -->
<TextView
android:layout_width="match_parent"
android:layout_height="30dp"
android:layout_marginLeft="50dp"
android:layout_marginRight="50dp"
android:layout_marginTop="40dp"
android:background="@drawable/style6"
android:gravity="center"
android:text="部分圆角1"/>
<!-- 显示边框部分圆角2 开始 -->
<TextView
android:layout_width="match_parent"
android:layout_height="30dp"
android:layout_marginLeft="50dp"
android:layout_marginRight="50dp"
android:layout_marginTop="5dp"
android:background="@drawable/style7"
android:gravity="center"
android:text="部分圆角2"/>
<!-- 显示渐变色 开始 -->
<TextView
android:layout_width="match_parent"
android:layout_height="30dp"
android:layout_marginLeft="50dp"
android:layout_marginRight="50dp"
android:layout_marginTop="40dp"
android:background="@drawable/style8"
android:gravity="center"
android:text="渐变色"/>
</LinearLayout>
1、一条虚线,设置文件(drawable/style1.xml文件)
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="line">
<!--
显示一条虚线,
破折线的宽度为dashWith,
破折线之间的空隙的宽度为dashGap,
如果dashGap=0dp显示的就是一条实线
-->
<stroke
android:dashGap="3dp"
android:dashWidth="6dp"
android:width="1dp"
android:color="#ec5959" />
<!-- 虚线的高度 -->
<size android:height="1dp" />
</shape>
2、边框虚线,设置文件(drawable/style2.xml文件)
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<!--
显示一条虚线,
破折线的宽度为dashWith,
破折线之间的空隙的宽度为dashGap,
-->
<stroke
android:dashGap="3dp"
android:dashWidth="6dp"
android:width="1dp"
android:color="#ec5959" />
<!-- 虚线的高度 -->
<size android:height="1dp" />
</shape>
3、边框实线,设置文件(drawable/style3.xml文件)
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<!--
显示一条虚线,
破折线的宽度为dashWith,
破折线之间的空隙的宽度为dashGap,
-->
<stroke
android:dashGap="0dp"
android:dashWidth="6dp"
android:width="1dp"
android:color="#ec5959" />
<!-- 虚线的高度 -->
<size android:height="1dp" />
</shape>
4、圆角虚线,设置文件(drawable/style4.xml文件)
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<!-- 填充颜色 -->
<solid android:color="#FFFFFF"></solid>
<!-- 线的宽度,颜色灰色 -->
<stroke
android:dashGap="3dp"
android:dashWidth="6dp"
android:width="1dp"
android:color="#ec5959">
</stroke>
<!-- 矩形的圆角半径 -->
<corners android:radius="10dp" />
</shape>
5、圆角实线,设置文件(drawable/style5.xml文件)
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<!-- 填充颜色 -->
<solid android:color="#FFFFFF"></solid>
<!-- 线的宽度,颜色灰色 -->
<stroke
android:dashGap="0dp"
android:dashWidth="6dp"
android:width="1dp"
android:color="#ec5959">
</stroke>
<!-- 矩形的圆角半径 -->
<corners android:radius="10dp" />
</shape>
6、部分圆角1,设置文件(drawable/style6.xml文件)
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<!-- 填充颜色 -->
<solid android:color="#FFFFFF"></solid>
<!-- 线的宽度,颜色灰色 -->
<stroke
android:dashGap="0dp"
android:dashWidth="6dp"
android:width="1dp"
android:color="#ec5959">
</stroke>
<!--
矩形的圆角半径
android:bottomLeftRadius="10dp"
android:bottomRightRadius="10dp"
-->
<corners
android:topLeftRadius="10dp"
android:topRightRadius="10dp"/>
</shape>
7、部分圆角2,设置文件(drawable/style7.xml文件)
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<!-- 填充颜色 -->
<solid android:color="#FFFFFF"></solid>
<!-- 线的宽度,颜色灰色 -->
<stroke
android:dashGap="3dp"
android:dashWidth="6dp"
android:width="1dp"
android:color="#ec5959">
</stroke>
<!--
矩形的圆角半径
android:bottomLeftRadius="10dp"
android:bottomRightRadius="10dp"
android:topLeftRadius="10dp"
android:topRightRadius="10dp"
-->
<corners
android:bottomLeftRadius="10dp"
android:bottomRightRadius="10dp"/>
</shape>
8、渐变色,设置文件(drawable/style8.xml文件)
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<!--
shape是用来定义形状的,
gradient定义该形状里面为渐变色填充,
startColor起始颜色,
endColor结束颜色,
angle表示方向角度。
当angle=0时,渐变色是从左向右。 然后逆时针方向转,
当angle=90时为从下往上。
-->
<gradient
android:startColor="#ec5959"
android:endColor="#FFFFFF"
android:angle="0"/><!-- 90阴影冲上,-90,阴影冲下-->
<padding android:left="0dp"
android:top="0dp"
android:right="0dp"
android:bottom="0dp" />
</shape>