簡體   English   中英

按住時可繪制按鈕更改

[英]button change drawable on holding

我正在嘗試使此音量按鈕根據可繪制狀態改變其繪制狀態。因此,默認情況下,設備的音量將打開,按下該按鈕將使該設備靜音,並且在按住它時會將設備更改為僅振動。 現在,我試圖更改可繪制對象的振動狀態,但似乎沒有任何效果。 我目前在XML中有此代碼,我嘗試在按下狀態下進行操作,但無法進行相應的工作來更改可繪制對象。

<?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>

添加此android:state_pressed

<item android:drawable="@drawable/image_you_want_on_press_state"
android:state_pressed="true" />`

希望這個幫助。

我創建了一個新的可繪制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"/>

還要檢查一下: 按下時將源圖像更改為圖像視圖

默認的drawable <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>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM