2013-03-25 77 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