Android Drawable(一)之ShapeDrawable
来源:互联网 发布:淘宝皇冠要多久 编辑:程序博客网 时间:2024/06/04 18:41
在Android开发中经常需要自定义一些形状,这个时候就要用到shape drawable。
Android Developer : http://developer.android.com/intl/zh-cn/guide/topics/resources/drawable-resource.html#Shape
创建及使用shape drawable
- 文件位置:res/drawable/filename.xml
- 编译资源类型:GradientDrawable
- 资源引用:
- In Java: R.drawable.filename
- In XML: @drawable/filename
具体结构:
<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape=["rectangle" | "oval" | "line" | "ring"] > <corners android:radius="integer" android:topLeftRadius="integer" android:topRightRadius="integer" android:bottomLeftRadius="integer" android:bottomRightRadius="integer" /> <gradient android:angle="integer" android:centerX="integer" android:centerY="integer" android:centerColor="integer" android:endColor="color" android:gradientRadius="integer" android:startColor="color" android:type=["linear" | "radial" | "sweep"] android:useLevel=["true" | "false"] /> <padding android:left="integer" android:top="integer" android:right="integer" android:bottom="integer" /> <size android:width="integer" android:height="integer" /> <solid android:color="color" /> <stroke android:width="integer" android:color="color" android:dashWidth="integer" android:dashGap="integer" /></shape>
Elements说明
shape:根节点
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape=["rectangle" | "oval" | "line" | "ring"] //矩形|椭圆|线|圆环//当android:shape="ring"时,还需要指定以下属性: android:innerRadius:指定内环的半径 android:thickness:指定环的厚度 android:innerRadiusRatio:宽度比,如果该值为2,则内环半径等于环的宽度除以5 android:thicknessRatio:宽度比,如果该值为2,则环的厚度等于环的宽度除以2 android:useLevel:当为ring时,该属性必须指定为false>
stroke:边框
<stroke android:width="dimension" //边框宽度 android:color="color" //边框颜色 android:dashWidth="dimension" //虚线宽度 android:dashGap="dimension" /> //虚线间隔
solid:填充色
<solid android:color="color" />
gradient:渐变
<gradient android:type=["linear" | "radial" | "sweep"] //共有3中渐变类型,线性渐变(默认)/放射渐变/扫描式渐变 android:angle="integer" //渐变角度,必须为45的倍数,0为从左到右,90为从上到下 android:centerX="float" //渐变中心X的相当位置,范围为0~1 android:centerY="float" //渐变中心Y的相当位置,范围为0~1 android:startColor="color" //渐变开始点的颜色 android:centerColor="color" //渐变中间点的颜色,在开始与结束点之间 android:endColor="color" //渐变结束点的颜色 android:gradientRadius="float" //渐变的半径,只有当渐变类型为radial时才能使用 android:useLevel=["true" | "false"] /> //使用LevelListDrawable时就要设置为true。设为false时才有渐变效果
corners:圆角半径
这个element仅仅在rectangle时使用
<corners android:radius="integer" //该属性指定四个圆角的半径,不能和其他属性重用 android:topLeftRadius="integer" android:topRightRadius="integer" android:bottomLeftRadius="integer" android:bottomRightRadius="integer" />
size:shape大小
<size android:width="integer" android:height="integer" />
padding:内边距
<padding android:left="integer" android:top="integer" android:right="integer" android:bottom="integer" />
size和padding在具体控件也可以指定。
0 0
- Android Drawable(一)之ShapeDrawable
- Android Drawable之ShapeDrawable
- Android Drawable之ShapeDrawable
- Android Drawable之ShapeDrawable
- Android Graphics.drawable之—ShapeDrawable学习
- Drawable之ShapeDrawable
- Drawable学习之----ShapeDrawable
- Android-drawable资源-ShapeDrawable
- 初学Android,使用Drawable资源之使用ShapeDrawable资源(十五)
- Android开发艺术探索<Drawable系列之二ShapeDrawable>
- Android Drawable Resource学习(十三)、ShapeDrawable
- Android开发之ShapeDrawable
- Android开发之ShapeDrawable
- Android开发之ShapeDrawable
- Graphics->Drawable->ShapeDrawable
- Drawable资源--ShapeDrawable资源
- Android ApiDemos示例解析(65):Graphics->Drawable->ShapeDrawable
- Android Drawable Resource学习(十二)、ShapeDrawable还是GradientDrawable?
- DB2数据库创建非实例用户连接使用数据库
- 指针变量初始化
- Android4.4修改蓝牙设备默认名称
- 策略模式
- 对Android MVVM的理解
- Android Drawable(一)之ShapeDrawable
- Python 资源大全
- Android命令之ps
- Xcode 调试方法总结
- db2 -tv与db2命令
- 《Head First设计模式》学习笔记
- MySQL二级等级考试归纳——高级指令(上)
- 详解Java解析XML的四种方法
- selenium2.0关于python的常用函数(二)