使用<selector> </selector>更改按钮文本

时间:2013-04-27 10:49:11

标签: android

我正在使用选择器来改变按钮的颜色。我试图对文本属性做同样的事情。 是否有可能以这种方式更改文本?

1 个答案:

答案 0 :(得分:5)

据我所知,你不能这样做,因为android:text=""将字符串或字符串资源id作为参数。例如,如果你做这样的事情:

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_focused="true" android:state_pressed="false" android:text="SECOND" />
    <item android:state_focused="true" android:state_pressed="true" android:text="SECOND" />
    <item android:state_focused="false" android:state_pressed="true" android:text="SECOND" />
    <item android:text="FIRST" />
</selector>

,就像我们改变文本颜色或背景的方式一样,它会将此选择器的路径作为按钮文本。它将类似于:res/drawable/text_selector.xml或每当您放置此文件时。

所以实现这一目标的唯一方法是在按钮OnClickListener中手动控制它。