动态改变ImageButton背景图片

来源:互联网 发布:淘宝刀剑商 编辑:程序博客网 时间:2024/06/06 00:45
在应用中,用到ImageButton时,可能需要在不同的点击状态时,更改ImageButton的背景图片。这可以通过程序添加监听事件

来完成,但相对来说较为麻烦,还可通过selector来完成。
1.在drawable文件夹下创建一xml文件,名称随意,但一定要在drawable下,如my_button_background.xml
内容如下:
<?xml version="1.0" encoding="utf-8" ?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_window_focused="false"
android:drawable="@drawable/没有焦点时的图片背景" />
<item android:state_focused="true" android:state_pressed="true"
android:drawable=
"@drawable/非触摸模式下获得焦点并单击时的背景图片" />
<item android:state_focused="false" android:state_pressed="true"
android:drawable="@drawable/触摸模式下单击时的背景图片" />
<item android:state_selected="true"
android:drawable="@drawable/选中时的图片背景" />
<item android:state_focused="true"
android:drawable="@drawable/获得焦点时的图片背景" />
</selector>


2.在定义ImageButton时,设置背景属性时引用
<ImageButton
android:id="@+id/ImageButton01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/my_button_background"><!--这是关键,要引用上面xml所生成的id-->
</ImageButton>


OK,以上操作完成,即可实现按钮图片改变,但是在实验时,开发环境为sdk1.6,只有ImageButton实验成功,ImageView实验失败,可能是不支持吧!
以上内容参照:
http://hi.baidu.com/linrw/blog/item/69e1eb89b516aabe0f2444e5.html/cmtid/81d88bd5be5973ca51da4b16
http://hi.baidu.com/pengwenfu/blog/item/a8acaaa5c4ce5bfb9152ee86.html/cmtid/17f9b028b4f977f098250a67
原创粉丝点击