GitOPEN's Home.

Android中shape的使用

Word count: 375 / Reading time: 2 min
2015/05/06 Share

Android中的drawable resource的属性太多,进阶路上必须要记住啊

  • 看了下面的一段code就明白了:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    <shape>
    <!-- 实心 -->
    <solid android:color="#ff9d77"/>
    <!-- 渐变 -->
    <gradient
    android:startColor="#ff8c00"
    android:endColor="#FFFFFF"
    android:angle="270" />
    <!-- 描边 -->
    <stroke
    android:width="2dp"
    android:color="#dcdcdc" />
    <!-- 圆角 -->
    <corners
    android:radius="2dp" />
    <!-- 间隔 -->
    <padding
    android:left="10dp"
    android:top="10dp"
    android:right="10dp"
    android:bottom="10dp" />
    </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"      表示之间隔开的距离
    
    corners           圆角
           android:radius          为角的弧度,值越大角越圆。
        我们还可以把四个角设定成不同的角度,方法为:
        <corners
            android:topRightRadius="20dp"      右上角
            android:bottomLeftRadius="20dp"    右下角
            android:topLeftRadius="1dp"        左上角
            android:bottomRightRadius="0dp"    左下角
         />
        这里有个地方需要注意:
        bottomLeftRadius          右下角,而不是左下角,记得别搞错了
    
    padding         间隔
        这个就不用多说了,XML布局文件中经常用到。
    

欣慰帮到你 一杯热咖啡
【奋斗的Coder!】企鹅群
【奋斗的Coder】公众号
CATALOG