1.样式
矩形(rectangle)、椭圆形(oval)、线性形状(line)、环形(ring)
2.属性
corners:圆角属性
gradient:渐变属性
padding:边距属性
size:大小属性
solid:填充属性
stroke:描边属性
当样式为ring情况下,会有以下属性:
innerRadius:内环的半径
innerRadiusRatio:浮点型,以环的宽度比率来表示内环的半径;
thickness:环的厚度;
thicknessRatio:浮点型,以环的宽度比率来表示环的厚度;
useLevel:boolean值,如果当做是LevelListDrawable使用时值为true,否则为false。
innerRadiusRatio与thicknessRatio配合使用可以绘制适配各个屏幕大小的圆形。公式为:
+=
3.其他用法
shape常用语构造selector,类似以下
xml/color
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:color="@color/white" android:state_pressed="true"></item>
<item android:color="@color/color_tab_red"></item>
</selector>
xml/drawable
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true">
<shape android:shape="rectangle">
<solid android:color="@color/color_tab_red"/>
<corners android:radius="8dp"/>
</shape>
</item>
<item >
<shape android:shape="rectangle">
<solid android:color="#f4f4f4"/>
<corners android:radius="8dp"/>
</shape>
</item>
</selector>
网友评论