动态改变ImageButton背景图片

在应用中,用到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
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值