Button Style Design

Button 按鈕設計

1
2
3
4
5
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@color/filters_buttons_selected" android:state_pressed="true" />
<item android:drawable="@color/filters_buttons" />
</selector>

android:state_pressed="true" 屬性是按下後的顏色變化

這樣就可以幫按鈕添加自訂色彩,如果使用的是imageButton
可以在android:src=" ... "設定圖片資源,即可設計出簡單美觀的自訂按鈕


設定圓角

如果要設定圓角及其他特效,就不能直接於item之後設定android:drawable="xx",否則其他設定都會被這個顏色給覆蓋。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- 按下後的狀態 -->
<item android:state_pressed="true">
<shape android:shape="rectangle">
<!-- 該按鈕按下後的顏色 -->
<solid android:color="@color/dred"/>
<!-- 圓角呈度 -->
<corners android:radius="30dp" />
<!-- 邊框寬度和顏色 -->
<stroke android:width="2dp" android:color="#538394" />
</shape>
</item>
<!-- 預設的狀態 -->
<item>
<shape android:shape="rectangle">
<corners android:radius="30dp" />
<solid android:color="@color/fred"/>
<stroke android:width="2dp" android:color="#538394" />
</shape>
</item>
</selector>

實現效果


設定圓型Button及漸層色彩

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true">
<!-- 設定為圓型型狀 shape="oval" -->
<shape android:shape="oval">
<!-- 起始色彩為 #0A9BCD -->
<gradient android:startColor="#0A9BCD"
<!-- 最終色彩為 #083B4D-->
android:endColor="#083B4D"
<!-- 漸層半徑 -->
android:gradientRadius="60dp"
<!-- 漸層模式 -->
android:type="radial"/>
<corners android:radius="30dp" />
<stroke android:width="2dp" android:color="@color/strokec" />
</shape>
</item>
<item >
<shape android:shape="oval">
<corners android:radius="10dp" />
<solid android:color="#0A9BCD"/>
<stroke android:width="2dp" android:color="@color/strokec" />
</shape>
</item>
</selector>

實現效果


交叉使用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true">
<shape android:shape="oval">
<gradient android:startColor="#0A9BCD"
android:endColor="#083B4D"
android:gradientRadius="60dp"
android:type="radial"/>
<stroke android:width="2dp" android:color="@color/strokec" />
</shape>
</item>
<item >
<shape android:shape="rectangle">
<corners android:radius="20dp" />
<solid android:color="#0A9BCD"/>
<stroke android:width="2dp" android:color="@color/strokec" />
</shape>
</item>
</selector>

實現效果

文章目錄
  1. 1. Button 按鈕設計
    1. 1.1. 設定圓角
    2. 1.2. 設定圓型Button及漸層色彩
    3. 1.3. 交叉使用
|