Android中shape的子标签以及本身属性-总结

shape简单使用

简介

  1. 从其名字可以理解,shape就是形状嘛。
  2. 至于怎么理解shape可以参照图片,我可以加载一个图片作为我的background,那么同理我也可以加载一个shape作为background
  3. 有何区别呢?用代码写的shape要比直接加载png或.9文件占用更少的内存,性能更好

简单案例:

<?xml version="1.0" encoding="utf-8"?>

然后在相应的控件中指定background即可。

shape子标签

corners — 中文翻译成角落,可以理解成圆角

其中又有:

  • radius 所有圆角半径
  • toLeftRadius
  • toRightRadius
  • bottomLeftRadius
  • bottomRightRadis

gradient

用来定义渐变色的,可以定义两色渐变和三色渐变,以及渐变样式,属性有:

  • type:linear, radial,sweep,分别为线性(左到右直线渐变)、放射(中心为放射点)、扫描(雷达扫描~)渐变
  • angle:渐变角度,必须为45的倍数,0为从左到右 90为从上到下 仅对线性渐变有效
    以下三个是通用的:
  • startColor 渐变开始点的颜色
  • centerColor 渐变中点的颜色,在开始与结束中间
  • endColor 渐变结束点的颜色
    以下三个是仅用于放射渐变:
  • centerX 渐变中心点X的相对位置,范围为0-1 仅用于放射类型
  • centerY 同上 同样仅同于放射类型两者的选取其实就是宽和高的百分比
  • gradientRadius 渐变的半径,只有当渐变类型为radial时才可使用,且只有设置了该属性,radial渐变才有效
  • useLevel true or false使用LevelListDrawable时要设置为true,通常不用,默认值为false

padding

定义内部边距

  • left
  • top
  • right
  • bottom

size

基本不怎么用,因为控件本身也具有定义size的功能。 其用来定义图形的大小

  • width
  • height

solid — 中文翻译成固体的、结实的,可以理解成填充

只有一个属性:

  • color

stroke — 中文翻译为划、轻抚,可以理解成描边

是描边属性,可以定义描边的宽度,颜色,虚实线等

  • width 描边的宽度
  • color 描边的颜色
    以下两个用于设置虚线
  • dashWidth 虚线的宽度,值为0时是实线
  • dashGap 虚线的间隔

Shape的本身属性

上面讲的是shape子标签,现在讲shape本身的属性

  • shape: shape本身的形状,有rectangle、oval、line、ring。分别是矩形(默认值),椭圆形,线性,环形
  • rectangle的属性:
    • 首先,ractangle是默认值
    • 其没有额外的属性
  • oval的属性:
    • 其表示控件大小的矩形所对应的椭圆
  • line
    • 用处好像不大
  • ring的属性:
    • innerRadius 内环的半径
    • innerRadiusRatio 浮点,以环的宽度比率来表示内环的半径
    • thickness 环的厚度
    • thicknessRatio 以环的宽度比率来表示环的厚度
    • useLevel 不常用
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值