如果应用程序窗口位于第二位置,则状态栏图标在垂直多窗口模式下呈彩色

问题描述

在多窗口模式下,如果应用程序窗口位于第二位置,则状态栏图标的颜色会在Android 10 Lineage OS上不时地从白色变为黑色(如果旋转电话)。运行Android 9的Samsung Stock上没有这样的错误。看来android随机将应用的配色方案放在第一位。

正确的行为:

correct behavior

错误行为:

incorrect behavior

styles.xml:

<resources>
    <!-- Base application theme. -->
    <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>

        <item name="android:windowDrawsSystemBarBackgrounds">true</item>
        <item name="android:statusBarColor">@android:color/transparent</item>
        <item name="android:navigationBarColor">@android:color/transparent</item>
    </style>
</resources>

完整的源代码可在https://github.com/alecpetrosky/Android-Immerse-Demo

获得

解决方法

旋转似乎也使Android重绘状态栏。在配置更改上设置自动恢复活动可以解决该问题。