使用没有导航功能的DrawerLayout

时间:2018-02-16 15:27:52

标签: android drawerlayout

我一直在研究DrawerLayout项目的幻灯片菜单。除了一件事,它似乎表现得我想要的方式。

我运行了一些示例项目,它们似乎有一个共同点:DrawerLayout始终是应用程序的主要部分,如:

setContentView(R.layout.activity_main); 

activity_main的位置:

<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/app_bar_main"
        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="match_parent"
        android:layout_gravity="start"
        android:fitsSystemWindows="true"
        app:headerLayout="@layout/nav_header_main"
        app:menu="@menu/activity_main_drawer" />

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

此外,DrawerLayout似乎与导航有很强的联系,它曾用于在片段之间跳转。

我的问题是,我不希望使用此幻灯片菜单进行导航,也不希望将我应用的当前主页设为Fragment。我想要一个滑出菜单,但我会主要使用它进行设置,而不是在应用程序中移动。

有没有办法有一个简单的滑出菜单,它在视觉上和战术上都像DrawerLayout一样,但是不需要将我的所有视图都设置为它的片段?

1 个答案:

答案 0 :(得分:0)

我最近使用1.自定义RelativeLayout类,其中ViewTreeObserver引用自定义X或Y属性(对于抽屉,您将使用X)2。objectAnimator XML引用相同的自定义属性3.用于UI本身的片段类,使用自定义布局类4.使用setCustomAnimations getFragmentManager方法显示/隐藏菜单。

这是一个例子,只需将其更改为水平

Fragment Translation Animation for a Menu