android shape使用总结
-
今天使用到shape,这个里面有很多属性,在这里我记录一下各个属性的使用的情况以及所代表的意思
<?xml version="1.0" encoding="utf-8"?><shapexmlns:android="http://schemas.android.com/apk/res/android"android:shape=["rectangle" | "oval" | "line" | "ring"] ><cornersandroid:radius="integer"android:topLeftRadius="integer"android:topRightRadius="integer"android:bottomLeftRadius="integer"android:bottomRightRadius="integer" /><gradientandroid: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"] /><paddingandroid:left="integer"android:top="integer"android:right="integer"android:bottom="integer" /><sizeandroid:width="integer"android:height="integer" /><solidandroid:color="color" /><strokeandroid:width="integer"android:color="color"android:dashWidth="integer"android:dashGap="integer" /></shape>
上面这段就是shape使用的格式,来看一下如何使用:<shape>定义这是一个GradientDrawable,必须作为根元素。android:shape定义shape的值,必须是下面的之一:"rectangle" 矩阵,这也是默认的shape"oval" 椭圆"line" 一条水平的直线。这种shape必须使用 <stroke> 元素来定义这条线的宽度"ring" 圆环下面的属性只有当 android:shape="ring"才使用:android:innerRadius尺寸。 内环的半径。一个尺寸值(dip等等)或者一个尺寸资源。android:innerRadiusRatioFloat类型。这个值表示内部环的比例,例如,如果android:innerRadiusRatio = " 5 ",那么内部的半径等于环的宽度除以5。这个值会被android:innerRadius重写。 默认值是9。android:thickness尺寸。环的厚度,是一个尺寸值或尺寸的资源。android:thicknessRatioFloat类型。厚度的比例。例如,如果android:thicknessRatio= " 2 ",然后厚度等于环的宽度除以2。这个值是被android:innerRadius重写, 默认值是3。android:useLevelBoolean类型。如果用在 LevelListDrawable里,那么就是true。如果通常不出现则为false。<corners>为Shape创建一个圆角,只有shape是rectangle时候才使用。android:radiusDimension。圆角的半径。会被下面每个特定的圆角属性重写。android:topLeftRadiusDimension。top-left 设置左上角的半径android:topRightRadiusDimension。top-right 设置右上角的半径android:bottomLeftRadiusDimension。 设置右下角的半径android:bottomRightRadiusDimension。设置左下角的半径<gradient>指定这个shape的渐变颜色。android:angleInteger。渐变的角度。 0 代表从 left 到 right。90 代表bottom到 top。必须是45的倍数,默认为0android:centerXFloat。渐变中心的相对X坐标,在0到1.0之间。android:centerYFloat。渐变中心的相对Y坐标,在0到1.0之间。android:centerColorColor。可选的颜色值。基于startColor和endColor之间。android:endColorColor。 结束的颜色。android:gradientRadiusFloat 。渐变的半径。只有在 android:type="radial"才使用android:startColorColor。开始的颜色值。android:typeKeyword。渐变的模式,下面值之一:"linear" 线形渐变。这也是默认的模式"radial" 辐射渐变。startColor即辐射中心的颜色"sweep" 扫描线渐变。android:useLevelBoolean。如果在LevelListDrawable中使用,则为true<padding>内容与视图边界的距离android:leftDimension。左边填充距离.android:topDimension。顶部填充距离.android:rightDimension。右边填充距离.android:bottomDimension。底部填充距离.<size>这个shape的大小。android:heightDimension。这个shape的高度。android:widthDimension。这个shape的宽度。注意:默认情况下,这个shape会缩放到与他所在容器大小成正比。当你在一个ImageView中使用这个shape,你可以使用 android:scaleType="center"来限制这种缩放。<solid>填充这个shape的纯色android:colorColor。颜色值,十六进制数,或者一个Color资源<stroke>这个shape使用的笔画,当android:shape="line"的时候,必须设置改元素。android:widthDimension。笔画的粗细。android:colorColor。笔画的颜色android:dashGapDimension。每画一条线就间隔多少。只有当android:dashWidth也设置了才有效。android:dashWidthDimension。每画一条线的长度。只有当 android:dashGap也设置了才有效。android:dashGap和android:dashWidth设置这条线为虚线的,其中android:dashWidth表示'-'这样一个横线的宽度,android:dashGap表示之间隔开的距离,使用别人的一段代码:button_bg.xml<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" ><!-- 填充 --><solid android:color="#ff9d77" /> <!-- 定义填充的颜色值 --><!-- 描边 --><strokeandroid:width="2dp" android:color="#fad3cf" /> <!-- 定义描边的宽度和描边的颜色值 --><!-- 圆角 --><cornersandroid:bottomLeftRadius="5dp"android:bottomRightRadius="5dp"android:topLeftRadius="5dp"android:topRightRadius="5dp" /> <!-- 设置四个角的半径 --><!-- 间隔 --><paddingandroid:bottom="10dp"android:left="10dp"android:right="10dp"android:top="10dp" /> <!-- 设置各个方向的间隔 --></shape> 复制代码 button_pressed_bg.xml的内容如下:复制代码 <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" ><!-- 渐变 --><gradientandroid:endColor="#FFFFFF"android:gradientRadius="50"android:startColor="#ff8c00"android:type="radial" /><!-- 描边 --><strokeandroid:dashGap="3dp"android:dashWidth="5dp"android:width="2dp"android:color="#dcdcdc" /><!-- 圆角 --><corners android:radius="5dp" /><!-- 间隔 --><paddingandroid:bottom="10dp"android:left="10dp"android:right="10dp"android:top="10dp" /></shape>
如何使用,看下面的代码:<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"><item android:drawable="@drawable/button_pressed_bg" android:state_pressed="true"></item><item android:drawable="@drawable/button_bg"></item>
</selector>
转载于:https://www.cnblogs.com/AceIsSunshineRain/p/5188935.html
android shape使用总结相关推荐
- Android Shape 的使用
学而时习,温故而知新. 今天复习shape 画各种常见类型的背景图 使用: 当在 java 代码R.drawable.文件的名称 当在布局中时 android:background="@dr ...
- android shape.xml 文件使用
设置背景色可以通过在res/drawable里定义一个xml,如下: <?xml version="1.0" encoding="utf-8"?> ...
- Android Shape使用
说明 在Android开发中,使用shape可以很方便的帮我们画出想要的背景,相对于png图片来说,使用shape可以减少安装包的大小,而且能够更好的适配不同的手机. 使用 先贴出官网上的说明: &l ...
- android shape的可选参数以及每个参数的含义与用法!
2019独角兽企业重金招聘Python工程师标准>>> <span style="font-size:18px"><?xml version=& ...
- Android Shape Drawable Resources
本文主要介绍Drawable Resources的一种,Shape Drawable Resources的使用.其他Drawable类似 经常需要自己设置某个view的背景,比如类似新浪微博客户端微博 ...
- Android shape的使用(圆角矩形)
<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http: ...
- android shape 按钮背景_Android button, xml文件定义形状,代码中修改背景颜色
1. 首先在drawable文件夹定义一个shape.xml文件,内容如下: xmlns:android="http://schemas.android.com/apk/res/androi ...
- android shape 自定义,Android自定义shape的使用
MainActivity如下: package cn.testshape; import android.os.Bundle; import android.app.Activity; /** * D ...
- android layerlist bitmap,android shape类似的 另一个 高端用法:layer-list
android shape类似的 另一个 高端用法:layer-list : 简介: 将多个图片或上面两种效果按照顺序层叠起来 " <?xml version="1.0&qu ...
- android shape.xml 属性详解
转载源:http://blog.csdn.net/harvic880925/article/details/41850723 一.简单使用 刚开始,就先不讲一堆标签的意义及用法,先简单看看shape标 ...
最新文章
- html5制作交互式课件,用flash制作交互式课件.ppt
- android call require api level
- Tcl与Design Compiler (二)——DC综合与Tcl语法结构概述
- CF1313D:Happy New Year(状压dp)
- JSON数据从OSS迁移到MaxCompute最佳实践 1
- 简述ospf的工作原理_现代数字存储示波器的工作原理简述
- 从0到1打造企业数字化运营闭环白皮书
- C语言 — 编程规范
- 【2019南京网络赛:F】Greedy Sequence(set/线段树 + 思维)
- SQL语言的3种分类
- 计算机毕业设计springboot+vue+elementUI高校学生实习管理管理系统
- 腾讯云轻量应用服务器地域节点北京、上海和广州选择攻略
- 上海电力大学计算机专业考研好考么,上海电力大学(专业学位)计算机技术考研难吗...
- 贪吃蛇源码(C语言版)-学习版
- 浏览器绑定快捷键KeyboardEvent
- linux下安装anaconda教程清华源
- MySQL数据库框架
- unittest的运行方式
- IBM Guardium
- 研二导师画大饼,不给时间实习,咋办
热门文章
- ionic3使用第三方图标
- Ajax PHP 边学边练 之二 实例
- 使用CAJViewer 提取PDF文件中的文字
- 《企业软件交付:敏捷与高效管理精要》——2.1 引言
- HtmlDom 基础
- 华硕笔记本之secure boot
- CentOS下yum安装mcrypt错误:No package php-mcrypt available.解决方法
- 问题 B: 字符串的长度
- python写数据库中间件_python3开发进阶-Django框架的中间件的五种用法和逻辑过程...
- springboot定时删除log4j_SpringBoot整合log4j2进行日志配置及防坑指南