关于Android中shape标签的简单使用

来源:互联网 发布:安锐特监控软件下载 编辑:程序博客网 时间:2024/05/21 13:56

1.创建shape文件
在res/drawable文件夹下,新建一个文件即可。关于它的用法在定义好shape文件后,一般用在设置background属性。

2.具体定义shape
shape标签里有几个子标签(corners、gradient、padding、size、solid、stroke)。

(1)corners  角度  比如一般我们会给按钮添加圆角 就是根据这个属性<corners android:radius="3dp"/>(2)solid 内部填充指定颜色 一般用法:<solid android:color="#46d118" />(3)stroke 描边 可以设置它的宽度、颜色、虚实线等 其中dashWidth和dashGap在设置虚线的时候用到,分别指虚线的宽度和间隙 <stroke        android:width="2dp"        android:color="@color/line"        android:dashWidth="5dp"        android:dashGap="2dp" />(4)gradient 定义渐变色type属性有三个值分别是linear(线性渐变)、radial(放射渐变)、sweep(扫描渐变);startColor 渐变起始时颜色centerColor 渐变中间时颜色endClor 渐变结束时颜色gradientRadius 渐变半径 用于放射渐变中useLevel  只有当我们的shape使用在LeveListDrawable中的时候,这个值为true,否则为false。angle 渐变角度 该值必须是45的整数倍。如0,45,90... 当角度为0时,从左到右渐变;角度为45时,从左下到右上渐变;角度为90,从下到上渐变,接下来的我就不说了,可以自己尝试。centerX和centerY这两个属性是渐变的起始点,一般用在放射渐变当中。(5)padding、size这两个标签不怎么用,因为控件本身能够实现,所以这里就不说了。

3.shape的属性(矩形(rectangle)、椭圆形(oval)、线性形状(line)、环形(ring)),默认为矩形。值得注意的是下面的属性是环形特有的:

innerRadius 尺寸,内环的半径。
innerRadiusRatio 内环的比例,内环的半径就为环半径除以内环的比例
注:这两个属性不能同时使用

thickness 尺寸,环的厚度
thicknessRatio 环的厚度比例 环的厚度就为环半径除以厚度比例,如果设置了第三个属性,则这个属性不起作用。
注:这两个属性不能同时使用
useLevel 只有当我们的shape使用在LeveListDrawable中的时候,这个值为true,否则为false。

最后,基于以上几种特性,我做了以下几种效果供大家参考。效果图

Demo下载地址

2 0