android.R.color.secondary_text_dark
实际上不是颜色值,而是secondary_text_dark.xml
文件名中的选择器本身:我有代码:
val color = if(...)
android.R.color.darker_gray
else
android.R.color.secondary_text_dark
android.R.color.secondary_text_dark
的值现在为deprecated in API level 28,它表示“改为使用主题中的文本颜色。”。有一个列出的常量值和括号“ 17170437(0x01060005)”,但由于这些颜色值不能放入colors.xml
中,因此我无法理解这些颜色值,因为颜色十六进制值应采用"#ffxxxx"
这样的格式。
有人可以告诉我这些常数的含义是什么?文字颜色与通常的颜色有不同的处理方法吗?如果我想保持相同的行为,应该如何提取这些颜色值?
我有代码:val color = if(...)android.R.color.darker_gray else android.R.color.secondary_text_dark值android.R.color.secondary_text_dark现在是... [
android.R.color.secondary_text_dark
实际上不是颜色值,而是secondary_text_dark.xml
文件名中的选择器本身:<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_window_focused="false" android:state_enabled="false" android:color="@android:color/dim_foreground_dark_disabled"/>
<item android:state_window_focused="false" android:color="@android:color/dim_foreground_dark"/>
<item android:state_selected="true" android:state_enabled="false" android:color="@android:color/dim_foreground_dark_inverse_disabled"/>
<item android:state_pressed="true" android:state_enabled="false" android:color="@android:color/dim_foreground_dark_inverse_disabled"/>
<item android:state_selected="true" android:color="@android:color/dim_foreground_dark_inverse"/>
<item android:state_activated="true" android:color="@android:color/bright_foreground_dark_inverse"/>
<item android:state_pressed="true" android:color="@android:color/dim_foreground_dark_inverse"/>
<item android:state_enabled="false" android:color="@android:color/dim_foreground_dark_disabled"/>
<item android:color="@android:color/dim_foreground_dark"/>
</selector>
因此,我可以将其内容复制到res/animator
文件夹中,提取它引用的所有颜色值,然后从我的代码中调用R.animator.secondary_text_dark
。
android.R.color.secondary_text_dark
实际上不是颜色值,而是secondary_text_dark.xml
文件名中的选择器本身: