Shape属性详解

强颜欢笑 提交于 2019-12-03 01:04:40

Android中常常用Shape来定义控件显示的属性,一般利用R.Drawable.id来进行访问设置背景等属性。
作用:XML中定义的几何形状
位置:res/drawable/文件的名称.xml,在这里详细介绍各个属性以及标签的意义。

<?xml version="1.0" encoding="utf-8"?>
<!--
    android:shape=["rectangle" | "oval" | "line" | "ring"]
    shape的形状,默认为矩形,可以设置为矩形(rectangle)、椭圆形(oval)、线性形状(line)、环形(ring)
           下面的属性只有在android:shape="ring"时可用:
    android:innerRadius 尺寸,内环的半径。
    android:innerRadiusRatio 浮点型,以环的宽度比率来表示内环的半径,
            例如,如果android:innerRadiusRatio,表示内环半径等于环的宽度除以5,这个值是可以被覆盖的,默认为9.
    android:thickness 尺寸,环的厚度
    android:thicknessRatio 浮点型,以环的宽度比率来表示环的厚度,例如,如果android:thicknessRatio="2",
            那么环的厚度就等于环的宽度除以2。这个值是可以被android:thickness覆盖的,默认值是3.
    android:useLevel boolean值,如果当做是LevelListDrawable使用时值为true,否则为false.
-->
<!--
            渐变 :gradient
    angle为渐变的角度(必须为45的整数倍)  从左到右为0;然后逆时针旋转,90度为从下到上,270为从上到下。
    type为渐变的类型 linear线性(默认) radial径向 gradientRadius="50" 设置指定的半径
    centerx和centery的值取0-1;表示中间点的位置,如下面三幅图:中间点分别是0,0.5,1。中间点为0的,则渐变的中间色的位置在最上面;中间点为0.5的,则渐变的中间色在屏幕中间;中间点为1 的,则中间点在屏幕下部。
-->
<!--
              圆角:corners
              值越大角越圆
     android:topRightRadius="20dp"      右上角
     android:bottomLeftRadius="20dp"    右下角
     android:topLeftRadius="1dp"        左上角
     android:bottomRightRadius="0dp"    左下角
     android:radius="8dp"  同时设置四个角度的圆角
-->
<!--
    solid:实心,就是填充的意思
    android:color指定填充的颜色 
-->
<!--
         描边:stroke
   android:width="2dp" 描边的宽度
   android:color 描边的颜色
         我们还可以把描边弄成虚线的形式,设置方式为:
   android:dashWidth="5dp" 
   android:dashGap="3dp"
         其中android:dashWidth表示'-'这样一个横线的宽度,android:dashGap表示之间隔开的距离。 
-->
<!-- 
        间距:padding
 -->
 <!-- 大小:size -->
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle" >
    <gradient
        android:angle="45"
        android:endColor="#80CCCCCC"
        android:startColor="#FFCCCCCC" />

    <padding
        android:bottom="3dp"
        android:left="3dp"
        android:right="3dp"
        android:top="3dp" />
    <corners android:radius="8dp" />
</shape>
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!