我试图制作这个音量按钮,根据放入的状态改变抽屉。所以默认情况下,设备的音量将打开,按下时会使设备静音,当它坚持将设备改为仅振动。现在我正试图改变它在振动时的可绘性,但我尝试的任何东西似乎都没有用。我目前在我的XML中有这个代码,我尝试使用压缩状态,但我无法获得可以相应更改drawable的工作。
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/ic_volume_down_black_24dp"
android:state_checked="true" />
<item android:drawable="@drawable/ic_volume_off_black_24dp"
android:state_checked="false"/>
</selector>
答案 0 :(得分:0)
添加此android:state_pressed
。
<item android:drawable="@drawable/image_you_want_on_press_state"
android:state_pressed="true" />`
希望得到这个帮助。
答案 1 :(得分:0)
我创建了一个新的drawable xml文件,例如image_state.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true">
<bitmap android:src="@drawable/image_pressed"/>
</item>
<item>
<bitmap android:src="@drawable/image"/>
</item>
</selector>
在我的布局文件中,我将imageView的src设置为:
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/image_state"/>
答案 2 :(得分:0)
默认可绘制<item android:drawable="@drawable/ic_volume_off_black_24dp"></item>
和已按下的st <item android:drawable="@drawable/ic_volume_down_black_24dp" android:state_pressed="true" />
<selector xmlns:android="http://schemas.android.com/apk/res/android" android:exitFadeDuration="200">
<item android:drawable="@drawable/ic_volume_down_black_24dp" android:state_activated="true" />
<item android:drawable="@drawable/ic_volume_down_black_24dp" android:state_pressed="true" />
<item android:drawable="@drawable/ic_volume_off_black_24dp"></item>
</selector>