Android drawable之shape



    
    
    
    
    
    

就是这么直接, 所有的用法都在这里了, 可以翻墙的同学可以直接看这个

Android drawable之shape_第1张图片
  • shape标签
    首先看一下shape标签, 有一个shape属性, 默认是rectangle, 用的最多也是rectangle, 还有oval(椭圆), line(线), ring(环形);
  • corners
    接着看一下标签, 该标签当且仅当矩形时有用, 设置矩形的圆角
    radius属性设置四个角的半径, 但是会被其他四个的属性覆盖掉, 其他四个属性就是设置具体角的的圆角半径
    可以看一下简单例子:

    
    

    
    

然后添加一个按钮添加上去这个背景:

Android drawable之shape_第2张图片
效果图

也可以设置这样


Android drawable之shape_第3张图片
效果图
  • gradient标签
    angle: 整形, 渐变的角度. 0表示从左到右, 90为从上到下, 必须是45的倍数, 默认值为0;
    centerX:浮点型。渐变中心的相对 X 轴位置 (0 - 1.0)。
    centerY:浮点型。渐变中心的相对 Y 轴位置 (0 - 1.0)。
    startColor, centerColor, endColor: 设置相应的颜色
    type: 要应用的渐变团的类型, 有效值为:
说明
"linear" 线性渐变。这是默认值。
"radial" 径向渐变。起始颜色为中心颜色。
"sweep" 流线型渐变。

当类型为radial是, 还有一个属性为gradientRadius, 为浮点型, 设置渐变的半径
看几个简单效果:


    
Android drawable之shape_第4张图片
效果图

设置为径向渐变的话:


    
Android drawable之shape_第5张图片
效果图

流线型的话

 
    
Android drawable之shape_第6张图片
效果
  • padding 标签
    有left, right, top, bottom四个属性.没什么好说的
  • size标签
    有height和width属性, 也没有什么好说的
  • solid标签
    之前已经用到了, 只有color一个属性, 用来填充颜色的.
  • stroke
    形状的笔画中线
    width: 线宽
    color: 颜色
    dashGap: 每个短划线的间距, 只有设置了dashWidth才有效
    dashWidth: 每个短划线的大小, 只有设置了dashGap才有效
    一个例子:

    
    
    

Android drawable之shape_第7张图片
效果

除了矩形, 其他三种的也是类似的, 自己可以尝试出各种效果,
只不过当shape类型为ring时, 还有几个额外的属性

  • innerRadius: 尺寸。环内部(中间的孔)的半径
  • innerRadiusRatio:浮点型。环内部的半径,以环宽度的比率表示,例如,如果 android:innerRadiusRatio="5",则内半径等于环宽度除以 5。此值被android:innerRadius覆盖。默认值为 9。
  • thickness: 尺寸。环的厚度,
  • thicknessRatio: 浮点型。环的厚度,表示为环宽度的比率。例如,如果 android:thicknessRatio="2",则厚度等于环宽度除以 2。此值被android:innerRadius
    覆盖。默认值为 3。

来看一个效果:



    
    

Android drawable之shape_第8张图片
效果

你可能感兴趣的:(Android drawable之shape)