1.图形定制
1.1图形Drawable
drawable-ldpi,drawable-mdpi,drawable-hdpi,drawable-xhdpi,drawable-xxhdpi,drawable-xxxhdpi
存放的图片分辨率越来越高
在xml中通过@drawable/来引用
1.2形状图形Shape
在xml中以shape标签来定义,支持四种类型形状:
-
rectangle:矩形(默认);
-
oval:椭圆,此时corners节点会失效;
-
line:直线,此时必须设置stroke节点,不然会报错;
-
ring,圆环;
在java中使用setBackgroundResource来设置背景图片,内容为R.drawable.xxxx
形状图形各节点:
2.size(尺寸):shape的下级结点
属性:
节点 |
描述 |
属性 |
shape |
根节点,描述当前是哪种几何图形。 |
shape取值:rectangle、oval、line、ring |
size |
描述形状图形的宽高尺寸 |
width:像素类型,图片宽度 height:像素类型,图片高度 |
stroke |
描述形状的描边规格 若dashGap或dashWidth有一个值为0则描边为实线 |
color:描边颜色 dashGap:像素类型每段虚线的间隔 dashWidth:像素类型虚线宽度 width:像素类型,描边厚度 |
corners |
描述圆角大小 |
bottomLeftRadius:像素类型,左下圆角半径 bottomRightRadius:像素类型,右下圆角半径 topLeftRadius:像素类型,左上圆角半径 topRightRadius:像素类型右上圆角半径 radius:四个圆角半径 |
solid |
填充色彩 |
color:内部填充颜色 |
padding |
图形与边界的间隔 |
top:与上方间隔 bottom、left、right |
gradient |
描述颜色渐变 |
angle:整形,渐变起始的角度,0表示9点位置,90表示6点位置。 type:渐变类型, linear,线性渐变默认; radial,放射渐变起始颜色是圆心颜色; sweep,滚动渐变即一个线段以某个端点为圆心做360度旋转。 centerX:浮点型,圆心的x坐标,当android:type="linear"不可用。 centerY:浮点型,圆心的y坐标,当android:type="linear"不可用。 gradientRadius:整型,渐变半径,type为radial centerColor:渐变的中间颜色 startColor:渐变的起始颜色 endColor:终止颜色 useLevel:布尔类型,true为无渐变色,false为有渐变色 |
1.3九宫格图片
界面上方黑线指水平拉伸区域,左边黑线指垂直拉伸区域
界面下方黑线指在该图片作为控件背景时,控件内部的文字左右边界只能放在黑线内
界面右方黑线指在该图片作为控件背景时,控件内部的文字上下边界只能放在黑线内
1.4状态列表图形
状态类型属性:
状态属性名 |
说明 |
适用控件 |
state_pressed |