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

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下载地址

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值