android九补丁文本颜色更改
我有一个按钮定义为九个补丁,如下所示:android九补丁文本颜色更改,android,button,nine-patch,rollover,Android,Button,Nine Patch,Rollover,我有一个按钮定义为九个补丁,如下所示: <Button android:id="@+id/button4" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/matita" android:layout_gravity="center
<Button android:id="@+id/button4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/matita"
android:layout_gravity="center"
android:textSize="22sp"
android:text="@string/menu_help" />
在该按钮中有一个文本,例如“我的文本”,该文本为黑色。我的问题是,当按下按钮时,我只想更改文本颜色。我怎么能做到?
提前感谢。您需要使用
drawable/textColor.xml
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="true" android:color="@color/testcolor1"/>
<item android:state_pressed="true" android:state_enabled="false" android:color="@color/testcolor2" />
<item android:state_enabled="false" android:color="@color/testcolor3" />
<item android:color="@color/testcolor5"/>
</selector>
您需要使用选择器来执行此操作 在drawable文件夹中,创建一个文件,例如dynamic_color_button,并将其写入其中:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="true" android:state_pressed="false" android:color="#000000" />
<item android:state_focused="true" android:state_pressed="true" android:color="#FF0000" />
<item android:state_focused="false" android:state_pressed="true" android:color="#FF0000" />
<item android:color="#000000" />
</selector>
然后在按钮中,使用textColor访问它:
<Button android:id="@+id/button4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/matita"
android:layout_gravity="center"
android:textSize="22sp"
android:textColor="@drawable/dynamic_color_button"
android:text="@string/menu_help" />
<Button android:id="@+id/button4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/matita"
android:layout_gravity="center"
android:textSize="22sp"
android:textColor="@drawable/dynamic_color_button"
android:text="@string/menu_help" />