admin 发表于 2018-9-17 09:04:13

Android中Shape的属性说明及其使用

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:dither="false|true"             //将在位图的像素配置与屏幕不同时(例如:ARGB 8888 位图和 RGB 565 屏幕)启用位图的抖动;值为“false”时则停用抖动。默认值为 true。
    android:shape="rectangle|line|oval|ring"//分别为矩形、线、椭圆、环。默认为矩形rectangle
    android:innerRadius="integer"         // shape为ring时可用,内环半径
    android:innerRadiusRatio="float"      // shape为ring时可用,内环的厚度比,即环的宽度比表示内环半径,默认为3,可被innerRadius值覆盖
    android:thickness="integer"             // shape为ring时可用,环的厚度
    android:thicknessRatio="float"          // shape为ring时可用,环的厚度比,即环的宽度比表示环的厚度,默认为9,可被thickness值覆盖
    android:tint="color"                  // 给shape着色
    android:tintMode="src_in|src_atop|src_over|add|multiply|screen" // 着色类型
    android:useLevel="false|true"         // 较少用,一般设为false,否则图形不显示。为true时可在LevelListDrawable使用
    android:visible="false|true"
    >
    <!-- 圆角 -->
    <corners
      android:radius="integer"            // 圆角半径,该值设置时下面四个属性失效
      android:bottomLeftRadius="integer"// 左下角圆角半径
      android:bottomRightRadius="integer" // 右下角圆角半径
      android:topLeftRadius="integer"   // 左上角圆角半径
      android:topRightRadius="integer"    // 右上角圆角半径
      />
    <!-- 渐变 -->
    <gradient
      android:useLevel="false|true"       // 与上面shape中该属性的一致
      android:type="linear|radial|sweep"// 渐变类型,分别为线性、放射性、扫描性渐变,默认为线性渐变linear
      android:angle="integer"             // 渐变角度,当上面type为线性渐变linear时有效。角度为45的倍数,0度时从左往右渐变,角度方向逆时针
      android:centerColor="color"         // 渐变中间位置颜色
      android:startColor="color"          // 渐变开始位置颜色
      android:endColor="color"            // 渐变结束位置颜色
      android:centerX="float"             // type为放射性渐变radial时有效,设置渐变中心的X坐标,取值区间,默认为0.5,即中心位置
      android:centerY="float"             // type为放射性渐变radial时有效,设置渐变中心的Y坐标,取值区间,默认为0.5,即中心位置
      android:gradientRadius="integer"    // type为放射性渐变radial时有效,渐变的半径
      />
    <!-- 内边距 -->
    <padding
      android:bottom="integer"// 设置底部边距
      android:left="integer"    // 左边边距
      android:right="integer"   // 右边
      android:top="integer"   // 顶部
    />
    <!-- 大小 -->
    <size
      android:height="integer"// 宽度
      android:width="integer"   // 高度
      />
    <!-- 填充 -->
    <solid
      android:color="color"   // shape的填充色
      />
    <!-- 描边 -->
    <stroke
      android:color="color"       // 描边的颜色
      android:width="integer"   // 描边的宽度
      android:dashGap="integer"   // 虚线间隔
      android:dashWidth="integer" // 虚线宽度
    />
</shape>

页: [1]
查看完整版本: Android中Shape的属性说明及其使用