shape的使用创建步骤文件要放在drawable文件夹下如果放在layout下会报错
来源:互联网 发布:linux 安装rpm命令 编辑:程序博客网 时间:2024/05/19 07:09
shape的xml资源文件要放在drawable文件夹下如果放在layout下会报错
**
shape的创建和使用步骤
**
1.创建shape.xml文件放在drawable文件夹下,这里定义shape图形样式
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" > <corners android:radius="20dip"/> <solid android:color="#ff00ff"/> </shape>
2.添加到控件中,一般作为background属性引用
<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_margin="50dip" android:text="@string/hello_world" android:background="@drawable/shape"/>
运行之后就可以看到效果了,就是自己定义了一个图形,然后作为控件的背景显示一下而已,就和一张图片作为背景效果是一样的,只不过这里我们的形状是通过代码自己写的。
**
Shape自身的属性(rectangle、oval、line、ring)
rectangle (矩形)
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <solid android:color="#ff00ff"/> </shape>
oval(椭圆)
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval"> <solid android:color="#ff00ff"/> </shape>
line(线形)
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="line"> <solid android:color="#ff00ff"/> </shape>
ring(环形)
他的一些属性
android:innerRadius 尺寸,内环的半径。 android:thickness 尺寸,环的厚度 android:innerRadiusRatio 浮点型,以环的宽度比率来表示内环的半径,
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="ring" android:innerRadius="20dp" android:thickness="50dp" android:useLevel="false"> <solid android:color="#ff00ff"/> </shape>
**
shape的子标签属性,可以通过这些属性定义图形的形状,颜色,渐变色,描边
基本属性(corners、gradient、padding、size、solid、stroke)
corners定义圆角形状
<corners //定义圆角 android:radius="dimension" //全部的圆角半径 android:topLeftRadius="dimension" //左上角的圆角半径 android:topRightRadius="dimension" //右上角的圆角半径 android:bottomLeftRadius="dimension" //左下角的圆角半径 android:bottomRightRadius="dimension" /> //右下角的圆角半径
solid 定义图形填充的颜色
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" > <solid android:color="这里设置你想要的颜色"/> </shape>
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时才有渐变效果
stroke 给图形描边属性,可以定义描边的宽度,颜色,虚实线等
<stroke android:width="dimension" //描边的宽度 android:color="color" //描边的颜色 // 以下两个属性设置虚线 android:dashWidth="dimension" //虚线的宽度,值为0时是实线 android:dashGap="dimension" /> //虚线的间隔
1 0
- shape的使用创建步骤文件要放在drawable文件夹下如果放在layout下会报错
- 关于图片要放在哪个drawable文件夹下
- android pad上图片放在drawable文件夹下不正确的显示的讨巧的解决方法
- 在删除文件夹的时候,如果直接使用删除文件夹的命令Directory.Delete(path);而没有先删除子目录下的文件便会报错
- 编译src目录下的源文件,然后放在compile文件夹下,接着把compile下的class文件打包,放在dist文件夹下
- 编译src目录下的源文件,然后放在compile文件夹下,接着把compile下的class文件打包,放在dist文件夹下,并设置清单
- 文件放在res/drawable、res/raw、/assets下的区别
- 要在J2ME中播放音乐的文件,必须放在项目文件夹下,而不是包下
- Libs文件夹下的Jar文件为什么不会自动放在Android Private Libraries目录下
- workspace放在nfs的个人文件夹下
- c++将一个文件夹下的所有文件读取出来放在一个文件中
- 当jsp文件放在某个文件夹下时jquery的$.ajax方法失效的--解决方案
- 当jsp文件放在某个文件夹下时jquery的$.ajax方法失效的--解决方案
- Matlab中的.m文件必须放在安装目录下的work文件夹中才能打开
- 因为将工程放在带有中文的文件夹下,打不开sln文件
- 关于获取放在src文件夹下读取xml文件的总结
- 复杂的表达式放在循环语句里会报错
- 文件输入流 文件要放在 project目录下
- caffe层解读系列-softmax_loss
- 【详解CSS3盒模型display:box】二
- Arduino第一个程序详解——人人都能玩硬件
- [容器]Pull下kubeadm1.6所需的镜像
- docker部署web应用
- shape的使用创建步骤文件要放在drawable文件夹下如果放在layout下会报错
- Android6.0 Disk I/O error
- oc——与c之不同——文件包含 默认初始化
- Java定时更新数据---定时器(spring+struts2)
- 1002. A+B for Polynomials (25)
- ActiveReports报表控件V11 SP1版本正式发布!
- 工作中Django总结之二(模板)
- 噢耶~开始博客之路!
- ThinkPhP。 异步实现地区三级联动