今天學習自定義Button按鈕樣式。Button樣式修改的是Button的背景(Background)屬性。java
首先寫一個定義Button樣式的XML文件:
新建Android XML文件,類型選Drawable,根結點選selector,文件名就buton_style吧。
程序自動給咱們剛剛建的文件里加了selector結點,咱們只須要在selector結點裏寫上三種狀態時顯示的背景圖片(按下、獲取焦點,正常)。
android
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_pressed="true"> <shape> <gradient android:startColor="#FFFF00" android:endColor="#C0C0C0" android:angle="0"/> <stroke android:width="4dip" android:color="#b0000000"/> <corners android:radius="15dp"/> <padding android:left="10dp" android:top="10dp" android:right="10dp" android:bottom="10dp"/> </shape> </item> <item android:state_focused="true"> <shape> <gradient android:startColor="#FFFFFFFF" android:endColor="#00000000" android:angle="270"/> <stroke android:width="4dip" android:color="#00000000"/> <corners android:radius="15dp"/> <padding android:left="10dp" android:top="10dp" android:right="10dp" android:bottom="10dp"/> </shape> </item> <item> <shape> <gradient android:startColor="#FFFFFFFF" android:endColor="#00000000" android:angle="90"/> <stroke android:width="4dip" android:color="#00000000"/> <corners android:radius="15dp"/> <padding android:left="10dp" android:top="10dp" android:right="10dp" android:bottom="10dp"/> </shape> </item> </selector>
gradient 主體漸變 學習
startColor開始顏色,endColor結束顏色 ,angle開始漸變的角度(值只能爲90的倍數,0時爲左到右漸變,90時爲下到上漸變,依次逆時針類推)
stroke 邊框 width 邊框寬度,color 邊框顏色
corners 圓角 radius 半徑,0爲直角
padding text值的相對位置spa