带有drawableTop和textcolor的TextView

时间:2011-01-26 15:36:28

标签: android textview

这是我的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,则不再有图像选择器的状态更改。

有人可以解释为什么会这样吗?

1 个答案:

答案 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