問題:自定義按鈕的顏色 形狀弧度 漸變效果
1.新建自定義屬性button_login.xml
(借鑒某大神)
<?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:angle="270" android:endColor="#888888" android:startColor="#888888" /> <!-- 漸變方向 按鈕邊緣="" 邊緣寬="" --> <stroke android:width="1sp" android:color="#7d5a7d" /> <!-- 邊緣顏色 按鈕四個圓角="" --> <corners android:radius="30dp" /> <!-- 半徑 內邊距="" 按鈕文字和邊緣距離="" --> <padding android:bottom="10dp" android:left="10dp" android:right="10dp" android:top="10dp" /> </shape> </item> <item android:state_focused="true"> <shape> <gradient android:angle="270" android:endColor="#7d5a7d" android:startColor="#7d5a7d" /> <stroke android:width="1sp" android:color="#dcdcdc" /> <corners android:radius="30dp" /> <padding android:bottom="10dp" android:left="10dp" android:right="10dp" android:top="10dp" /> </shape> </item> <item> <shape> <gradient android:angle="270" android:endColor="#00000000" android:startColor="#00000000" /> <stroke android:width="1sp" android:color="#7d5a7d" /> <corners android:radius="30dp" /> <padding android:bottom="10dp" android:left="10dp" android:right="10dp" android:top="10dp" /> </shape> </item> </selector>
2.在布局中引用:
<Button android:id="@+id/login" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="登錄" android:layout_weight="0.06" android:elevation="0dp" android:padding="12px" android:background="@drawable/button_login" android:textColor="#faf7fa" android:textSize="18dp"/>
