我想在我的活动中使用 appcompat v21 工具栏。但是我正在实现的工具栏在状态栏下方重叠。我该如何解决?
这是活动布局xml:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="vertical"> <include android:id="@+id/toolbar" layout="@layout/toolbar" /> <FrameLayout android:id="@+id/container" android:layout_width="fill_parent" android:layout_height="0dp" android:layout_weight="1" /> </LinearLayout>
工具栏视图:
<?xml version="1.0" encoding="utf-8"?> <android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="wrap_content" android:minHeight="?attr/actionBarSize" android:background="?attr/colorPrimary" />
主题风格:
<style name="AppTheme" parent="MaterialNavigationDrawerTheme.Light.DarkActionBar"> <item name="colorPrimary">@color/primary</item> <item name="colorPrimaryDark">@color/primary_dark</item> <item name="colorAccent">@color/accent</item> </style>
在布局的根视图中使用android:fitsSystemWindows="true"(在您的情况下为 LinearLayout)。并且android:fitsSystemWindows是一个
android:fitsSystemWindows="true"
android:fitsSystemWindows
内部属性根据状态栏等系统窗口调整视图布局。如果为 true,则调整此视图的填充以为系统窗口留出空间。仅当此视图在非嵌入式活动中时才会生效。 必须是布尔值,“真”或“假”。 这也可能是对包含此类型值的资源(形式为“@[package:]type:name”)或主题属性(形式为“?[package:][type:]name”)的引用. 这对应于全局属性资源符号fitsSystemWindows。
内部属性根据状态栏等系统窗口调整视图布局。如果为 true,则调整此视图的填充以为系统窗口留出空间。仅当此视图在非嵌入式活动中时才会生效。
必须是布尔值,“真”或“假”。
这也可能是对包含此类型值的资源(形式为“@[package:]type:name”)或主题属性(形式为“?[package:][type:]name”)的引用.
这对应于全局属性资源符号fitsSystemWindows。