android:windowBackground无法正常工作

Luk*_*uke 5 android android-dialog android-styles

我创建了一个自定义对话框主题,如下所示:

<style name="dialogLight" parent="Theme.AppCompat.Light.Dialog">
    <item name="android:windowBackground">attr/theme_dialogBackground</item>
</style>
Run Code Online (Sandbox Code Playgroud)

然而,当我运行应用程序时,dialog背景是默认设置(在一台设备上是透明的,在另一台设备上是黑色的).

但是,如果我更改android:windowBackgroundandroid:background,android:background则会看到正确的行为,并且对话框中所有视图的默认背景将成为指定的值.

将android:windowBackground的值更改为@drawable或@color工作.

我知道android:windowBackground和之间有什么区别android:background,并且使用android:background不是我需要的,因为我只想改变窗口背景颜色.

那么为什么android:windowBackground不被应用呢?

Luk*_*uke -4

正如 @Raghunandan 所解释的, android:windowBackground 需要引用可绘制对象,而不是像我所做的那样引用颜色