1. Button屬性設置
系統(tǒng)提供的Button都是一成不變的樣子
方方正正,淺灰色的背景辙售,好low轻抱。
-
Seletor
可以為Button提供了在各種狀態(tài)下顯示不同圖片或者顏色的選項。想為Button增加點擊效果的好選擇旦部。- 在res/drawable下創(chuàng)建一個Drawable Resource File祈搜,這是一個XML文件
- 根元素
<seletor xmlns:android="http://schemas.android.com/apk/res/android">
</seletor> - 子元素
<item></item>
- 子元素的屬性
-
android:drawable
這個屬性用來控制該item
顯示的drawable資源 -
android:state_xxxxx
這個屬性用來控制item
將在什么情況下顯示drawable資源
其中的xxxxx是泛指許多情況,常用的情況有- android:state_focused
- android:state_selected
- android:state_pressed
- 不指定
android:state_xxxxx
屬性的item
則是默認項士八,找不到指定情況下使用的item
就是用默認項容燕,注意了,默認項item
要寫在其他所有item
的后面曹铃,這個坑已經坑過我很多次了
-
- 例子 btn_back.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true" android:drawable="@drawable/back_press" />
<item android:drawable="@drawable/back" />
</selector>
在Button中將該btn_back.xml設置為
background
屬性即可
可以明顯地看到Button的點擊效果缰趋,雖說這個效果也是可以直接通過java代碼實現(xiàn),可寫在XML文件當然方便多了。 -
shape
可以為Button提供了修改形狀的選項- 在res/drawable下創(chuàng)建一個Drawable Resource File秘血,這是一個XML文件
- 根元素
<shape xmlns:android="http://schemas.android.com/apk/res/android">
</shape> - 子元素
-
<solid/>-填充顏色
- ```android:color`` 設置填充的顏色
-
<corners/>-圓角 下列屬性來設置圓角的參數(shù)
-
android:radius
四個角的弧度半徑 -
android:bottomLeftRadius
左下角的弧度半徑 -
android:bottomRightRadius
右下角的弧度半徑 -
android:topLeftRadius
左上角的弧度半徑 -
android:topRightRadius
右上角的弧度半徑
-
- <gradient/>-漸變 不常用不詳述屬性
-
<padding/>-內容離邊界距離
-
android:top
距離上邊界的距離 -
android:bottom
距離下邊界的距離 -
android:left
距離左邊界的距離 -
android:right
距離右邊界的距離
-
- <size/>-大小 可在這里設置控件寬度
-
<stroke/>-描邊
-
android:color
設置描邊的顏色 -
android:width
設置描邊的寬度 -
android:dashGap
設置小段實線之間的距離 -
android:dashWidth
設置一小段實線的寬度
-
4.例子 btn_shape.xml
<?xml version="1.0" encoding="utf-8"?>
<shape android:shape="rectangle" xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#00ee00"/>
</shape>
<?xml version="1.0" encoding="utf-8"?>
<shape android:shape="rectangle" xmlns:android="http://schemas.android.com/apk/res/android">
<gradient android:startColor="#ff8c00"
android:endColor="#FFFFFF"
android:angle="270" />
<stroke android:width="2dp"
android:color="#dcdcdc" />
<corners android:bottomLeftRadius="36dp"
android:topRightRadius="8dp"/>
<padding android:left="10dp"
android:top="10dp"
android:right="10dp"
android:bottom="10dp" />
</shape>
在Button中將該btn_shape.xml設置為background屬性即可