这是我的textview。它的顶部还有一个图像选择器。
<TextView
android:id="@+id/icon_live_ticker"
android:layout_width="100dp"
android:layout_height="wrap_content"
android:drawableTop="@drawable/selector_live_ticker"
android:gravity="center"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textStyle="bold"
android:textSize="10dp"
android:text="@string/text_icon_live_ticker">
</TextView>
问题是,如果我设置textColor,则不再有图像选择器的状态更改。
有人可以解释为什么会这样吗?
答案 0 :(得分:4)
解决方案是,为textColor使用颜色选择器
<?xml version="1.0" encoding="utf-8"?>
<selector
xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_pressed="false"
android:color="#777777" />
<item
android:state_pressed="true"
android:color="#AAAAAA" />
</selector>
所以修改后的TextView看起来像:
<TextView
android:id="@+id/icon_live_ticker"
android:layout_width="100dp"
android:layout_height="wrap_content"
android:drawableTop="@drawable/selector_live_ticker"
android:gravity="center"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textStyle="bold"
android:textSize="10dp"
android:textColor="@drawable/selector_icon_text_color"
android:text="@string/text_icon_live_ticker">
</TextView>
我为此写了一篇小帖子: http://hello-android.blogspot.com/2011/01/problem-with-textcolor-by-using.html