在Android中,控件Button和ImageButton一般有三種狀態:常態(normal)、點擊狀態(pressed)、聚焦狀態(focused)。很多時候,我們爲了提高用戶的體驗常常爲Button以及ImageButton的不同狀態設置不同的背景圖片,下面介紹一種利用selector設置Button和ImageButton不同狀態下的背景圖片的方法。
具體步驟如下:一、在res/drawable文件下創建selector.xml,示例代碼如下:
01.<SPAN style="FONT-SIZE: 16px"><?xml version="1.0" encoding="utf-8"?>
02.<selector xmlns:android="http://schemas.android.com/apk/res/android">
03. <item
04. android:state_pressed="false"
05. android:drawable="@drawable/title_button_back">
06. </item>
07. <item
08. android:state_pressed="true"
09. android:drawable="@drawable/title_button_back_h">
10. </item>
11. <item
12. android:state_window_focused="false"
13. android:drawable="@drawable/title_button_back">
14. </item>
15.</selector></SPAN>
二、編寫佈局文件,爲佈局文件中的ImageButton設置selector,示例代碼如下:
01.<SPAN style="FONT-SIZE: 16px"><?xml version="1.0" encoding="utf-8"?>
02.<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
03. android:layout_height="wrap_content"
04. android:layout_width="fill_parent">
05. <ImageButton
06. android:id="@+id/title_IB"
07. android:layout_height="wrap_content"
08. android:layout_width="wrap_content"
09. android:background="#00000000"
10. android:layout_marginRight="4dp"
11. android:layout_centerVertical="true"
12. android:src="@drawable/selector">
13. </ImageButton>
14.</RelativeLayout></SPAN>