Android文本视图颜色不为';不能在禁用时更改

Android文本视图颜色不为';不能在禁用时更改,android,colors,textview,Android,Colors,Textview,当我为TextView对象调用setEnabled(false)时,文本颜色不会改变。我以为它会变成灰色。如果删除XML文件中的android:textColor行,它将恢复正常 有什么想法吗?我想发生的是,由于您覆盖了默认的textcolor,因此它没有继承其他textcolor样式。尝试为它创建一个文本,并将textColor属性设置为它,而不是设置为颜色 在颜色文件(例如res/color/example.xml)中: 然后在布局中: <TextView android:

当我为
TextView
对象调用
setEnabled(false)
时,文本颜色不会改变。我以为它会变成灰色。如果删除XML文件中的
android:textColor
行,它将恢复正常


有什么想法吗?

我想发生的是,由于您覆盖了默认的textcolor,因此它没有继承其他textcolor样式。尝试为它创建一个文本,并将textColor属性设置为它,而不是设置为颜色

在颜色文件(例如res/color/example.xml)中:


然后在布局中:

<TextView
    android:text="whatever text you want"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textColor="@color/example" />


注意,我已经有一段时间没有这样做了,我从内存中输入了很多,所以可能需要一些调整。ColorStateList文档(链接在上面)有一个更丰富的颜色XML文件示例。

您必须手动将文本颜色设置为所需的任何颜色。至少这是我必须做的。这里有一个解决方案:D谢谢!把它放在一个地方很方便。只是旁注。您可以将其放在“xml”文件夹中,并将其用作“@xml/example”,而不是“color”文件夹(例如,它不是2.1的标准)。从styles.xml也可以很好地工作!有没有办法通过编程获得禁用文本的颜色?
<TextView
    android:text="whatever text you want"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textColor="@color/example" />