shape��selector��Android UI����о����õ��ģ���������Ҫ�Զ���һ��Բ��Button�����Button��ЩЧ���ı仯����Ҫ�õ�shape��selector����������˵��shape��selector�������ؼ��е�������������Ҫ�ġ�
1.Shape
���
���ã�XML�ж���ļ�����״
λ�ã�res/drawable/�ļ�������.xml
ʹ�õķ�����
Java�����У�R.drawable.�ļ�������
XML�У�android:background="@drawable/�ļ�������"
���ԣ�
<shape> android:shape=["rectangle" | "oval" | "line" | "ring"]
����rectagle���Σ�oval��Բ��lineˮƽֱ�ߣ�ring����
<shape>���ӽڵ�ij������ԣ�
<gradient> ����
android:startColor ��ʼ��ɫ
android:endColor ������ɫ
android:angle ����Ƕȣ�0���ϵ��£�90��ʾ�����ң���ֵΪ45��������Ĭ��Ϊ0��
android:type �������ʽ liner���Խ��� radial���ν��� sweep
<solid > ���
android:color ������ɫ
<stroke > ���
android:width ��ߵĿ���
android:color ��ߵ���ɫ
android:dashWidth ��ʾ'-'���ߵĿ���
android:dashGap ��ʾ'-'����֮��ľ���
<corners > Բ��
android:radius Բ�ǵİ뾶 ֵԽ���ԽԲ
android:topRightRadius ����Բ�ǰ뾶
android:bottomLeftRadius ����Բ�ǽǰ뾶
android:topLeftRadius ����Բ�ǰ뾶
android:bottomRightRadius ����Բ�ǰ뾶
2.Selector
���
λ�ã�res/drawable/�ļ�������.xml
ʹ�õķ�����
Java�����У�R.drawable.�ļ�������
XML�У�android:background="@drawable/�ļ�������"
<?xml version="1.0" encoding="utf-8" ?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Ĭ��ʱ�ı���ͼƬ-->
<item android:drawable="@drawable/pic1" />
<!-- û�н���ʱ�ı���ͼƬ -->
<item
android:state_window_focused="false" android:drawable="@drawable/pic_blue"
/>
<!-- �Ǵ���ģʽ�»�ý��㲢����ʱ�ı���ͼƬ -->
<item
android:state_focused="true"
android:state_pressed="true"
android:drawable= "@drawable/pic_red"
/>
<!-- ����ģʽ�µ���ʱ�ı���ͼƬ-->
<item
android:state_focused="false"
android:state_pressed="true"
android:drawable="@drawable/pic_pink"
/>
<!--ѡ��ʱ��ͼƬ����-->
<item
android:state_selected="true"
android:drawable="@drawable/pic_orange"
/>
<!--��ý���ʱ��ͼƬ����-->
<item
android:state_focused="true"
android:drawable="@drawable/pic_green"
/>
</selector> 2.shape+selector�ۺ�ʹ�õ����� selector.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="true">
<shape>
<gradient android:angle="270" android:endColor="#99BD4C"
android:startColor="#A5D245" />
<size android:height="60dp" android:width="320dp" />
<corners android:radius="8dp" />
</shape>
</item>
<item android:state_pressed="true">
<shape>
<gradient android:angle="270" android:endColor="#99BD4C"
android:startColor="#A5D245"/>
<size android:height="60dp" android:width="320dp" />
<corners android:radius="8dp" />
</shape>
</item>
<item>
<shape>
<gradient android:angle="270" android:endColor="#A8C3B0"
android:startColor="#C6CFCE"/>
<size android:height="60dp" android:width="320dp" />
<corners android:radius="8dp" />
</shape>
</item>
</selector>