如何解决在应用程序启动时更改全屏背景Android 5.11 使用自定义主题
问题
我正在尝试在应用启动的“冷启动”阶段更改背景(颜色/可绘制)。
我有几个测试设备,我创建了一个简单的自定义主题,它覆盖了父主题的背景属性。当我启动我的应用时,在我的 Android 10 设备上,背景显示完美且全屏(无论是颜色还是可绘制)。
在我的 Android 5.1 (Lollipop) 设备上,我没有这样的运气,背景只是纯黑色。
主题代码 这就是我在 values/styles.xml 中设置主题的方式...
<style name="MyTheme" parent =
"@android:style/Theme.DeviceDefault.Light.NoActionBar.Fullscreen">
<item name="android:background">@drawable/myDrawable</item>
</style>
注意: 'myDrawable' 已定义(它只是一个位图图像)。如前所述,它在启动期间不适用于 Android 5.1。如果我只是设置一个十六进制颜色值(例如'#ffffff'),也一样。
我是不是误解了什么,还是我需要为旧设备做一些不同的事情?
解决方法
你应该使用<item name="android:windowBackground">@drawable/myDrawable</item>