您现在的位置:首页 > 博客 > Android开发 > 正文
android中使用selector动态改变imageView或ImageButton的背景
http://www.drovik.com/      2012-9-7 20:53:55      来源:CSDN社区      点击:

做应用时,可能会需要动态改变控件的背景图片,如果仅仅是简单的点击,选中之类的事件,如果靠程序中写监听的代码就显得太麻烦了,在这种情况下,你可以使用selector动态改变控件背景拉:)

1。在res/drawable目录下建一个mybutton.xml文件,根据需要,不同的状态下建立不同的item,并对应相应的图片

<selector xmlns:android="http://schemas.android.com/apk/res/android">

<item android:state_window_focused="false"
android:drawable="@color/transparent" />

<!-- Even though these two point to the same resource, have two states so the drawable will invalidate itself when coming out of pressed state. 注意这句话-->


<item android:state_focused="true" android:state_enabled="false"
android:state_pressed="true"
android:drawable="@drawable/selector_background_disabled" />
<item android:state_focused="true" android:state_enabled="false"
android:drawable="@drawable/lselector_background_disabled" />

<item android:state_focused="true" android:state_pressed="true"
android:drawable="@drawable/selector_background_transition" />
<item android:state_focused="false" android:state_pressed="true"
android:drawable="@drawable/selector_background_transition" />

<item android:state_focused="true"
android:drawable="@drawable/selector_background_focus" />

</selector>

2。在构造layout是引用这个xml

<ImageButton
android:id="@+id/ImageButton01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/mybutton">
</ImageButton>

这样就ok拉

转自:http://control.blog.sina.com.cn/admin/article/article_add.php

分享到:
发表评论(0)
姓名 *
评论内容 *
验证码 *图片看不清?点击重新得到验证码