所以我有一個圖像按鈕,我想在它上面有兩個狀態。它將像書籤按鈕那樣工作,它有兩種狀態。如果用戶按下按鈕,則它會更改圖像,如果它再次按下該按鈕,則我需要返回原始圖像。什麼樣的按鈕可以在Android中切換/更改狀態?
這可能嗎?有沒有更簡單的方法使用另一種類型的按鈕? 謝謝
所以我有一個圖像按鈕,我想在它上面有兩個狀態。它將像書籤按鈕那樣工作,它有兩種狀態。如果用戶按下按鈕,則它會更改圖像,如果它再次按下該按鈕,則我需要返回原始圖像。什麼樣的按鈕可以在Android中切換/更改狀態?
這可能嗎?有沒有更簡單的方法使用另一種類型的按鈕? 謝謝
嘗試將主題更改爲:「什麼樣的按鈕可以切換/更改狀態?」
好像你需要ToggleBotton
<ToggleButton
android:layout_width="wrap_content"
android:layout_height="26dp"
android:background="@color/button_colors"
android:button="@null"
android:textOff="@null"
android:textOn="@null" />
而這個XML定義的顏色/在休息/按下狀態按鈕的圖片,把它放在res/color/button_colors.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="false" android:drawable="@drawable/button_rest"/>
<item android:state_checked="true" android:drawable="@drawable/button_on" />
</selector>
謝謝。所以在那之後,我只需要附加一個監聽器並設置操作。我可以獲得按鈕的狀態?並根據我可以執行的操作。 – 2012-02-28 01:26:02
是的,你可以使用普通的按鈕也。首先在res/drawable目錄中創建一個選擇器XML文件。例如:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_enabled="true" android:state_selected="true"
android:drawable="@drawable/selectedimage"/>
<item android:state_enabled="true" android:state_selected="false"
android:drawable="@drawable/notselectedimage"/>
</selector>
在佈局XML按鈕定義,你只需要添加這個屬性:
android:background="@drawable/myselectorxmlfile"
然後你編程設置選擇的狀態自己(在onClickListener)和按鈕圖像會改變背景狀態。
button.setSelected(true) // or false;
我想你可以使用切換按鈕,並希望它會解決您的問題。 只要看看它的一個簡單的XML代碼:
<ToggleButton
android:id="@+id/tglbtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textOn="ON"
android:textOff="OFF"
/>
,只是檢查在這個環節在這裏給出了答案: Android: Specify two different images for togglebutton using XML
此外, 我已經張貼有關切換按鈕的簡單教程。只要看看我的謙虛博客,如果你覺得它有幫助。這裏是鏈接:http://androiddesk.wordpress.com/2012/03/10/toggle-button-in-android/
友好的建議:爲您的問題添加一些更多的細節。特別是,標題有點混亂。 – 2012-02-22 21:31:41
嘗試使用您自己的自定義CSS的按鈕? – uday 2012-02-22 21:32:55
對不起大家..修改標題 – 2012-02-22 21:50:58