在 Android中,控件Button和ImageButton一般有三种状态:常态(normal)、点击状态(pressed)、聚焦状态 (focused)。很多时候,我们为了提高用户的体验常常为Button以及ImageButton的不同状态设置不同的背景图片,下面介绍一种利用 selector设置Button和ImageButton不同状态下的背景图片的方法。
具体步骤如下:
一、在res/drawable文件下创建selector.xml,示例代码如下:
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_pressed="false" android:drawable="@drawable/title_button_back"> </item> <item android:state_pressed="true" android:drawable="@drawable/title_button_back_h"> </item> <item android:state_window_focused="false" android:drawable="@drawable/title_button_back"> </item> </selector>二、编写布局文件,为布局文件中的ImageButton设置selector,示例代码如下:
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_height="wrap_content" android:layout_width="fill_parent"> <ImageButton android:id="@+id/title_IB" ; android:layout_height="wrap_content" android:layout_width="wrap_content" android:background="#00000000" android:layout_marginRight="4dp" android:layout_centerVertical="true" android:src="@drawable/selector"> ; </ImageButton> </RelativeLayout>
到此就为ImageButton的不同状态设置了不同的背景图片。
文章出处:http://blog.csdn.net/wuxianglong/article/details/6581298