我有一个实现AppCompat v7工具栏的应用程序,Lollipop上这个工具栏的高度是Androids< 5.0
更新:我现在添加Kitkat和Lollipop的截图 工具栏xml如下:
<?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:fitsSystemWindows="true"
android:gravity="center_vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minHeight="?attr/actionBarSize"
theme="@style/ThemeOverlay.AppCompat.ActionBar"
>
<LinearLayout
android:padding="0dp"
android:layout_margin="0dp"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="right|center_vertical">
<TextView
android:id="@+id/action_bar_restaurant_label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="@dimen/restaurant_label_action_bar_margin_start"
android:layout_weight="1"
android:alpha="0"
android:ellipsize="end"
android:gravity="left"
android:singleLine="true"
android:textColor="@color/white"
android:textSize="@dimen/restaurant_label_action_bar_font_size" />
<ImageButton
android:id="@+id/shuffle_restaurant"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_alignParentRight="true"
android:layout_marginRight="7dp"
android:layout_weight="0"
android:background="@color/transparent"
android:scaleType="fitXY"
android:src="@drawable/shuffle_button" />
</LinearLayout>
</android.support.v7.widget.Toolbar>
我的布局如下:
<android.support.v4.widget.DrawerLayout
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<FrameLayout
android:id="@+id/container"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<include layout="@layout/toolbar" />
<include layout="@layout/activity_content" />
</FrameLayout>
<ListView
android:id="@+id/list_slidermenu"
android:layout_width="240dp"
android:layout_height="fill_parent"
android:layout_gravity="start"
android:background="@color/list_background"
android:choiceMode="singleChoice"
android:divider="@color/list_divider"
android:dividerHeight="1dp"
android:listSelector="@drawable/list_selector"
android:paddingTop="50dp" />
</android.support.v4.widget.DrawerLayout>
截图:
答案 0 :(得分:10)
好的,我终于找到了解决方案,
如果您有一个半透明的状态栏,并且您不希望工具栏位于状态栏下方,而是保持在原始&#34; ActionBar&#34;的位置。是的,你需要将它设置为以下
android:fitsSystemWindows="true"
但这会导致我在上面描述的问题时直接在ToolBar上设置它,所以我将工具栏包装在
中<FrameLayout />
并设置
android:fitsSystemWindows="true"
FrameLayout上的不是工具栏