今天公司的小伙伴遇到了textview按下变颜色问题,记录下来希望对一些朋友有帮助。
首先出错时,textview的代码
<TextView
android:id="@+id/data_txt"
android:layout_width="60dp"
android:layout_height="60dp"
android:text="English"
android:background="@drawable/bag_setting_but"
android:clickable="true"
android:layout_centerInParent="true"
android:gravity="center"
/>
bag_setting_but.xml代码
<?xml version="1.0" encoding="utf-8"?>根据bag_setting_but.xml资源文件,可能有小伙伴能够看出item中使用的是android:color,在textview上面是使用background,想要按下改变文字的颜色,所以就要改成:
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:state_pressed="true" android:color="@color/setting_but_color"></item><!-- 控件按下时的颜色 -->
<item android:state_selected="true" android:color="@color/setting_but_color"></item><!-- 控件选中时的颜色 -->
<item android:color="@android:color/holo_red_dark" />
</selector>
android:textColor="@drawable/bag_setting_but"