我想对DatePicker
. 在平台中attrs.xml
DatePicker
,我们可以看到styleable的以下属性:
<declare-styleable name="DatePicker">
...
<!-- The text color for the selected date header text, ex. "2014" or
"Tue, Mar 18". This should be a color state list where the
activated state will be used when the year picker or day picker is
active.-->
<attr name="headerTextColor" format="color" />
<!-- The background for the selected date header. -->
<attr name="headerBackground" />
...
</declare-styleable>
虽然我可以参考android:headerBackground
,但出乎意料的是,我无法为android:headerTextColor
属性做到这一点。所以下面的代码styles.xml
:
<style name="MyDatePickerStyle" parent="@android:style/Widget.Material.DatePicker">
<item name="android:headerBackground">@color/red</item>
<item name="android:headerTextColor">@color/red</item>
</style>
提示错误,android:headerTextColor
无法解决。
但我可以清楚地看到 Widget.Material.DatePicker
覆盖该属性。有趣的是,这段代码前面有Attributes for new-style DatePicker
注释,这可能会以某种方式导致这种行为的原因。
这种行为的原因可能是什么以及如何覆盖该属性?
在 Android Studio 2.3、minSdkVersion 23、buildToolsVersion 25.0.3、compileSdkVersion 和 targetSdkVersion 23 上运行,缓存和清理项目无效。
正如您在R.attr
docs中看到的那样,一些属性后面有这个文本:
此常量在 API 级别 23 中已弃用。请改用headerTextColor。
这意味着,该属性应该暴露给公共 API,但不知何故它被剥离并且 AAPT 无法访问它。
在错误跟踪器上打开了一个问题。