Android 开发 - 状态栏未显示在 Lollipop 之前的版本 (AppCompat)

Android development - Status Bar not showing on pre Lollipop (AppCompat)

我正在使用 appcompat v21.0.3 开发我的应用程序并在 API 21 android 5.0 版上进行测试。1.Today 我决定使用 [= 在平板电脑上测试该应用程序20=] 4.4.2,一切正常,但我确实注意到状态栏已变得透明并掉落到工具栏。我附上了图片,希望对您有所帮助。 P.S 抱歉我的英语不好,我用 google 翻译器来制作这篇文章:)

看起来像这样 http://i.imgur.com/Q0dLqzM.png 但应该看起来像这样 http://i.imgur.com/V5uMgMf.jpg

在您的应用中添加此代码 style.xml。

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <!-- Customize your theme here. -->
     <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorPrimary">@color/primarycolor</item>
    <item name="android:textSize">24sp</item>
    <item name="android:actionBarTabStyle">@color/Textcolor</item>


</style>

在你的清单中替换

android:theme="@style/AppTheme"

android:theme="@style/Theme.AppCompat.Light.NoActionBar"

在 Main Activity 中使用以下代码为状态栏指定颜色。

if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
            Window window = this.getWindow();
            window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
            window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
            window.setStatusBarColor(this.getResources().getColor(R.color.main_red_dark));
        }

当然,这只是一种方式。我不是 100% 确定,您实际上在哪里更改状态栏的代码。必须要做。