Android中shape属性详解

在开发中经常会用到shape标签来定义控件的背景,shape标签总共有四个图形选项,分别是rectangle(矩形),oval(椭圆),line(横线)和ring(圆环) 。
不设置默认rectangle(矩形)
相关属性:

  • android:innerRadius 尺寸,内环的半径。
  • android:innerRadiusRatio 浮点型,以环的宽度比率来表示内环的半径,
  • android:thickness 尺寸,环的厚度
  • android:thicknessRatio 浮点型,以环的宽度比率来表示环的厚度,例如,如果android:thicknessRatio="2",
  • android:useLevel boolean值,如果当做是LevelListDrawable使用时值为true,否则为false.
    下面的属性只有在android:shape="ring"时可用,其他的属性。
    示例如下:
    创建 drawable-》New-》Drawable resource file 资源文件
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="ring"
    android:innerRadius="100dp"
    android:thickness="10dp"
    android:useLevel="false">
    <solid android:color="#ff00ff"/>
</shape>

效果图.jpg

二、基本属性
基本属性(corners、gradient、padding、size、solid、stroke)
1、corners(角)

  • android:radius="dimension" 全部的圆角半径
  • android:bottomLeftRadius="dimension" 左下角的圆角半径
  • android:bottomRightRadius="dimension" 右下角的圆角半径
  • android:topLeftRadius="dimension" 左上角的圆角半径
  • android:topRightRadius="dimension" 右上角的圆角半径
    示例如下:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <corners
        android:bottomLeftRadius="12dp"
        android:bottomRightRadius="16dp"
        android:radius="20dp"
        android:topLeftRadius="4dp"
        android:topRightRadius="8dp" />
    <solid android:color="#ffff00" />
</shape>
效果图.jpg

2、solid(用以指定内部填充色)
只有一个属性

  • android:color="color" 指定填充的颜色
    上个示例中有体现

3、gradient(用以定义渐变色,可以定义两色渐变和三色渐变,及渐变样式)
它的属性有下面几个:

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容