我已经创建了一个导航抽屉。我想在状态栏下面显示抽屉。它可以正常工作。但抽屉在版本5及以上的状态栏上方打开。我想将抽屉设置为类似于第二个图像。如何在所有版本的状态栏下方的动作(即)上设置导航抽屉

<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/drawer_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true"
    tools:openDrawer="close"
   >

    <include
        layout="@layout/emp_app_bar_home"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

    <android.support.design.widget.NavigationView
        android:id="@+id/nav_view"
        android:layout_width="wrap_content"
        android:layout_height="fill_parent"
        android:layout_gravity="start"

        android:fitsSystemWindows="true"

        app:itemTextColor="@color/black"
        app:itemIconTint="@color/black"
        android:background="@drawable/menubg"
        app:headerLayout="@layout/emp_header"
        app:menu="@menu/activity_emp_drawer" />


</android.support.v4.widget.DrawerLayout>

` 抽屉在通用5+手机上方的操作栏上方打开

图像2

在此输入图像描述

===============>>#1 票数:0 已采纳

尝试将android:fitsSystemWindows="true"移除到DrawerLayout或将其DrawerLayout false,如android:fitsSystemWindows="false" ,这可能对您android:fitsSystemWindows="false"

===============>>#2 票数:0

用以下代码替换您的代码:

<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout       
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
tools:openDrawer="start">

<include
    layout="@layout/emp_app_bar_home"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" />

<android.support.design.widget.NavigationView
    android:id="@+id/nav_view"
    android:layout_width="wrap_content"
    android:layout_height="fill_parent"
    android:layout_gravity="start"
    android:fitsSystemWindows="true"
    app:itemTextColor="@color/black"
    app:itemIconTint="@color/black"
    android:background="@drawable/menubg"
    app:headerLayout="@layout/emp_header"
    app:menu="@menu/activity_emp_drawer" />

===============>>#3 票数:0

我所做的是找到状态栏的高度并抵消它。

private NavigationView mNavView;
private View mHeaderView;
//...
mNavView = (NavigationView) findViewById(R.id.navView);
//...
mHeaderView = mNavView.getHeaderView(0);
//...
LinearLayout mHeaderLayout = (LinearLayout) HeaderView.findViewById(R.id.headerLayout);
//..
mHeaderLayout.setPadding(0, getStatusBarHeight(), 0, 0);

获取状态栏高度的功能是:

public int getStatusBarHeight() {
        int result = 0;
        int resourceId = getResources().getIdentifier("status_bar_height", "dimen", "android");
        if (resourceId > 0) {
            result = getResources().getDimensionPixelSize(resourceId);
        }
        return result;
}

希望有所帮助。

PS。 找到状态栏的高度我很久以前就把它拿到了别的地方......

===============>>#4 票数:0

android:fitsSystemWindows="true" emp_header你在app:headerLayout="@layout/emp_header"提到的app:headerLayout="@layout/emp_header"

  ask by Abserve Tech translate from so

未解决问题?本站智能推荐:

8回复

更改操作栏android上的导航抽屉图标

我使用ActionBar在我的应用程序中创建了一个NavigationDrawer。 如上图所示,我想将NavigationDrawer切换按钮图标更改为我想要的内容。 我该怎么改变它? 这是我的代码: - 如果我尝试将其更改为R.drawable.hamburger_b
1回复

Android导航抽屉未填充操作栏空间

我正在开发一个使用侧面导航抽屉的应用程序。 我试图使导航栏幻灯片与操作栏一起移到右侧,然后就完成了。 但是,当操作栏移到右侧时,导航抽屉中的ListView不会填满该空间。 它只是留下一个空白的空白空间。 请帮忙。 下面是我的代码: myActivity.xml: M
1回复

导航抽屉片段内的Android操作栏标签

我有带碎片的导航抽屉。 是否有任何可能的方法在片段中实现操作栏选项卡,同时具有导航抽屉,就像在Google I / O 2014应用程序中一样?: http://cdn.slashgear.com/wp-content/uploads/2014/06/google-io-2014-app
3回复

Android中AppCompatActivity的操作栏中缺少打开导航抽屉的图标

我正在尝试将Android导航抽屉与AppCompatActivity的操作栏一起使用。 但是,当我实现操作栏时,其中没有打开导航抽屉的图标。 这就是我想要显示的 这是我当前操作栏的屏幕截图 您可以在下面看到我的代码。 这是我的activit
1回复

带导航抽屉的操作栏

这与已经在stackoverflow上发布的许多问题非常相似,但是我仍然没有找到正确的解决方案。 我面临的问题是如何实现自定义actionbar.xml文件并将导航抽屉功能添加到左上方的图标。 我正在尝试创建一个看起来像这样的操作栏,在侧面有两个ImageButtons,在中央有一个Im
2回复

导航抽屉包含操作栏

我想要在应用程序中使用导航抽屉,但是我不想导航抽屉覆盖我的操作栏 。 操作栏应始终可见。 我搜索了互联网,并从stackoverflow和一些博客中获得了一些解决方案,但是都一样。 我使用不带TitleBar或ActionBar的Navigation Drawer引用了此解决方案,但仍然相
2回复

Android:使用SystemBarTint Lib的导航抽屉列表重叠操作栏

我在应用程序中使用SystemBarTint库,并且导航抽屉列表与操作栏重叠。 屏幕截图可以在这里找到: https : //imgur.com/uaGjbvN 请有人帮我! 这是我的导航抽屉布局>>
1回复

Android:轻按操作栏不会打开导航抽屉

从(android studio中的默认项目)和各个站点汲取灵感,我想将导航抽屉作为布局和代码作为片段来实现。但是当时点击动作栏时打开导航抽屉的动作不起作用。 为什么默认项目有效? 它几乎是相同的代码。 码: “主要活动”: 如果您希望所有项目都可以在此处的github页面
1回复

当在导航抽屉中单击时,操作栏上的双项

我使用导航抽屉创建了一个应用程序,在显示“设置”菜单时打开抽屉 在我的容器中显示片段时,将显示两个菜单“设置”和“搜索信息”。 http://saifulhq.wordpress.com/?attachment_id=242 但是,当我单击标题上的“后退”按钮然后出现抽屉时,出现了
2回复

在Android中打开导航抽屉时,将汉堡操作栏图标更改为旋转箭头不起作用

我在Android应用程序中使用导航抽屉,工作正常。 我想添加一些动画用于打开和关闭 导航抽屉 。 动画: 1.Opening-Navigation Drawer显示箭头 ,隐藏汉堡包 。 2.Closing-Again显示汉堡包 ,隐藏箭头 。 打开和关闭它应该是