为按钮写了一个selector,一个正常状态,一个点击的状态,用了两张不同的图片。以求达到更好地用户体验。xml格式都正确,设置到ImageButton的src属性中。但是点击时图片并没有变成预想的那张。
经过查找,原来是在写selector的xml时,item的顺序有个严格的要求:正常状态的item必须放到最后,否则将不产生效果。
至于原因,不是很清楚。可能是Android疏忽了的一个小细节。
<?xml version="1.0" encoding="utf-8"?>
<selector
xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_focused="false"
android:state_pressed="true"
android:drawable="@drawable/arrow_pressed"/>
<!-- 正常状态的item必须放在最后,否则无法生效 -->
<item android:drawable="@drawable/arrow_normal"/>
</selector>
正常状态:
点击状态:
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。