在开发过程中总会碰到要画一些简单图形的时候,然而让设计去画图比较麻烦而且占的容量较大,所以简单图形自己画,自给自足。
首先了解一下画图的子标签,也就是shape的,默认shape是长方形,当然也可以自己进行设置,示例如下:
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" >
shape也可以选择“line"(线)、“oval”(椭圆)、“ring”(圆环)、“retangle”(长方形)。
画图主要有solid,stroke,corners,gradient,size和padding,下面将进行具体的介绍。
1.solid——填充
solid 只有一个属性 color,也就是填充的颜色,solid示例如下:
<solid android:color="#FFFFFF" />
2.stroke——边框
stroke有四个属性,具体如图中所示,解释的应该算是比较清楚的,要注意的一点是 width是指边框的宽度,一般我们用px作为它的单位,因为更细,也会避免使用dp或dip出现的模糊。后者指的是边框的颜色。stroke示例如下:
<!--width:线的宽度 dashgap:虚线间隔的宽度 dashWidth:虚线每一小段的宽度--> <stroke android:width="2px" android:dashGap="2dp" android:dashWidth="3dp" android:color="@color/home_color_main" />
3.corners——角度
corners有五个属性 radius 和另外四个:topLeftRadius、topRightRadius、bottomLeftRadius、bottomRightRadius。
当我们要绘画的图形的四个角的角度是一致的时候,只需要定义radius即可,否则用户可以分别定义四个角的角度。示例如下,两个子标签的效果其实是一样的:
<corners