工具栏覆盖并在状态栏上投射阴影

时间:2015-12-03 23:53:24

标签: android material-design appcompat-v7-r23

我在前Lollipop设备上使用AppCompat作为Material设计的后端。不知何故,支持toolbar覆盖status bar并在其上投下阴影,就像状态栏在工具栏后面一样。在我的Android 5.0.2手机上测试过。

enter image description here

以下是代码:

活动布局

<android.support.design.widget.CoordinatorLayout
    android:id="@+id/base_root"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true">

    <android.support.design.widget.AppBarLayout
        android:id="@+id/base_appbar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:theme="@style/PGTheme.AppBarOverlay">

        <android.support.v7.widget.Toolbar
            android:id="@+id/base_toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            android:background="?attr/colorPrimary"
            app:popupTheme="@style/PGTheme.PopupOverlay"/>

    </android.support.design.widget.AppBarLayout>

</android.support.design.widget.CoordinatorLayout>

主题-V21

<style name="PGTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <item name="colorPrimary">@color/base_color_2</item>
    <item name="colorPrimaryDark">@color/base_color_1</item>
    <item name="colorAccent">@color/base_color_2</item>
    <item name="android:colorButtonNormal">@color/base_color_2</item>
    <item name="android:textViewStyle">@style/PGTheme.TextView</item>
    <item name="android:editTextStyle">@style/PGTheme.EditText</item>
    <item name="android:buttonStyle">@style/PGTheme.Button</item>
</style>

<style name="PGTheme.NoActionBar">
    <item name="windowActionBar">false</item>
    <item name="windowNoTitle">true</item>
    <item name="android:windowDrawsSystemBarBackgrounds">true</item>
    <item name="android:statusBarColor">@android:color/transparent</item>
</style>

知道为什么会这样吗?

1 个答案:

答案 0 :(得分:10)

在你的Style中删除statusBarColor:

<item name="android:statusBarColor">@android:color/transparent</item>

所以你的主题是:

<style name="PGTheme.NoActionBar">
  <item name="windowActionBar">false</item>
  <item name="windowNoTitle">true</item>
  <item name="android:windowDrawsSystemBarBackgrounds">true</item>
</style>

希望这有帮助。