android中通过自定义xml实现shape效果 的属性配置

在Android开发过程中,经常需要改变控件的默认样式, 那么通常会使用多个图片来解决。不过这种方式可能需要多个图片,比如一个按钮,需要点击时的式样图片,默认的式样图片,然后在写一个selector的xml文件放在drawable文件夹中,但是 这样drawable中的内容就非常多,就容易使apk变大。

那么自定义图形shape就可解决这一问题, Android上自定义图形shape支持以下几种属性gradient、stroke、corners、padding、 solid等。

  1. < shape >      
  2.      <!-- 实心 -->      
  3.    < solid   android:color = "#ff9d77" />      
  4.     <!-- 渐变 -->      
  5.    < gradient      
  6.         android:startColor = "#ff8c00"      
  7.       android:endColor = "#FFFFFF"      
  8.         android:angle = "270"   />      
  9.     <!-- 描边 -->      
  10.     < stroke      
  11.          android:width = "2dp"      
  12.         android:color = "#dcdcdc"   />      
  13.      <!-- 圆角 -->      
  14.     < corners      
  15.         android:radius = "2dp"   />      
  16.     < padding      
  17.          android:left = "10dp"      
  18.         android:top = "10dp"      
  19.          android:right = "10dp"      
  20.         android:bottom = "10dp"   />      
  21.  </ shape > 
solid : 实心,就是填充的意思 
android:color 指定填充的颜色 
gradient
: 渐变 
android:startColor 和 android:endColor 分别为起始和结束颜色
android:angle 是渐变角度, 必须为45的整数倍 。
另外渐变默认的模式为android:type="linear",即线性渐变,可以指定渐变为径向渐变,android:type="radial",径向渐变需要指定半径android:gradientRadius="50"。 
stroke
: 描边 
android:width ="2dp"  描边的宽度, android:color 描边的颜色。 
我们还可以把描边弄成虚线的形式,设置方式为: 
android:dashWidth="5dp" 
android:dashGap="3dp" 
其中android:dashWidth表示'-'这样一个横线的宽度,android:dashGap表示之间隔开的距离。 
corners
:圆角 
android:radius 为角的弧度,值越大角越圆。 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值