获取样式的windowBackground属性

时间:2017-04-26 09:36:03

标签: android android-styles

假设我有这个主题:

<style name="DummyTheme" parent="AppTheme">
    <item name="android:textColor">@color/white</item>
    <item name="android:windowBackground">@color/black</item>
</style>

现在,在我的活动中,我希望获得此样式的文本颜色和android:windowBackground颜色。我已经有了这段代码(默认颜色用于调试目的):

TypedArray rootStyle = obtainStyledAttributes(R.style.DummyStyle, new int[]{android.R.attr.textColor, android.R.attr.windowBackground});

@ColorInt int textColor = rootStyle.getColor(0, Color.CYAN);
@ColorInt int backgroundColor = rootStyle.getColor(1, Color.MAGENTA);

rootStyle.recycle();

适用于文字颜色,但不适用于背景颜色:backgroundColor设置为-1。不是Color.MAGENTA,而是-1

我还尝试从中获取ColorDrawable而不是颜色整数,但它也不起作用(其颜色设置为-1)。

为什么?谢谢!

0 个答案:

没有答案