shape用于定义控件的形状和颜色(drawable下新建xml,根为<shap>)
1.根的属性 android:shape="" value:
rectangle(矩形) line(线) oval(椭圆) ring()
2.子标签
1.solid 填充(android:color="")
2.gradient 渐变
android:startColor和android:endColor分别为起始和结束颜色
android:angle表示渐变角度(值为45的整数倍)
type表示渐变模式linear(线性),radial(径向,指定半径 eg:android:gradientRadius="50")
3.storke边框
android:width=""指定边框的宽度
android:color="#ff00ff" 边框颜色
android:dashWidth=""虚线
4.corners圆角
android:radius=""圆角的弧度
android:topLeftRadius=""单独设置四个角的弧度
5.padding 间隔
6.使用案例
bg_shape.xml
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<corners android:radius="270dp"/>
<solid android:color="#7fff0000"/>
<stroke
android:width="5sp"
android:color="#00ff00"/>
</shape>
bg_selector.xml
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:drawable="@drawable/bt_shape" android:state_pressed="true"></item>
<item android:drawable="@color/btn_normal"></item>
</selector>
button
<Button android:background="@drawable/bg_selector" />
7.画形状(eg:圆形)
ShapeDrawable drawable = new ShapeDrawable(new OvalShape());
drawable.getPaint().setColor(getResources().getColor(R.color.white));