2013-03-25 46 views
0

當我們需要更改按鈕的背景圖像時,我對如何爲按鈕應用選擇器有了一個想法。我也想在按下按鈕時改變文字顏色。有沒有類似的方式創建選擇器XML來做到這一點?另一種選擇是,我想,會改變onclick方法中的文本顏色,但我想知道是否有其他方式或更好的方法來做同樣的事情。如何在Android中單擊更改背景圖片和文本按鈕?

感謝

回答

2

我猜,會改變文字顏色的onclick方法

只需創建正確的選擇,並將其分配給TextView的顏色屬性

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

    <item 
     android:state_focused="true" 
     android:state_pressed="true" 
     android:color="somecolor" 
    /> 

    <item 
     android:state_focused="false" 
     android:state_pressed="true" 
     android:color="somecolor" 
    /> 

    <item android:color="somecolor" /> 

</selector> 

然後一個用法:

android:textColor="@drawable/yourselector" 

我們需要改變按鈕

這對背景幾乎相同的只是在項目你會改變顏色屬性與繪製的背景圖像。

0

你可以把你的代碼放在你的按鈕的setOnClickListener中,在那裏你可以設置你想要的背景和文本或任何你的按鈕。希望這可以幫助你。

0

抽拉/ now_playing_next.xml

<?xml version="1.0" encoding="UTF-8"?> 
    <selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:state_pressed="true" android:drawable="@drawable/icon_down" /> 
    <item android:state_pressed="false" android:drawable="@drawable/icon_up" /> 
    </selector> 

這裏icon_up是正常狀態下的背景圖像和icon_down被按下狀態圖像

然後

<Button 
    android:id="@+id/MediaNextButton" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:background="@drawable/now_playing_next" /> 

用於改變文本使用OnClickListener