一、概念
Shape图形又称形状图形,它用来描述常见的几何形状,包括矩形、圆角矩形、圆形、椭圆。
根节点下定义了 6 个节点,分别是:size(尺寸)、stroke(描边)、corners(圆角)、solid(填充)、padding(间隔)、gradient(渐变)
二、shape(形状)
使用 shape 可以自定义形状,可以定义下面四种类型的形状,通过android:shape属性指定:
- rectangle : 矩形,默认的形状,可以画出直角矩形、圆角矩形、弧形等
- oval : 椭圆形,用得比较多的是画正圆
- line : 线形,可以画实线和虚线
- ring : 环形,可以画环形进度条
2.1 rectangle
rectangle是默认的形状,也是用得最多的形状,一些文字背景、按钮背景、控件或布局背景等,以下是一些简单的效果:
1.3.3 矩形边框的Drawable
<?xmlversion="1.0"encoding="utf-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android">
<!--设置一个黑色边框-->
<strokeandroid:width="2px"android:color="#000000"/>
<!--渐变-->
<gradient
android:angle="270"
android:endColor="#C0C0C0"
android:startColor="#FCD209"/>
<!--设置一下边距,让空间大一点-->
<padding
android:left="5dp"
android:top="5dp"
android:right="5dp"
android:bottom="5dp"/>
</shape>
1.3.4 圆角矩形边框的Drawable
<?xmlversion="1.0"encoding="utf-8"?>
<shape
xmlns:android="http://schemas.android.com/apk/res/android">
<!--设置透明背景色-->
<solidandroid:color="#87CEEB"/>
<!--设置一个黑色边框-->
<stroke
android:width="2px"
android:color="#000000"/>
<!--设置四个圆角的半径-->
<corners
android:bottomLeftRadius="10px"
android:bottomRightRadius="10px"
android:topLeftRadius="10px"
android:topRightRadius="10px"/>
<!--设置一下边距,让空间大一点-->
<padding
android:bottom="5dp"
android:left="5dp"
android:right="5dp"
android:top="5dp"/>
</shape>