在某些片段上使用NavigationView和BottomNavigation的DrawerLayout

时间:2017-11-23 08:51:26

标签: android android-fragments drawerlayout bottomnavigationview

我正在使用MainActivity中标准NavigationView内的标准DrawerLayout开发应用。

当用户选择日历或事件时,应显示BottomNavigationView,允许用户在3个不同的片段之间切换。

DrawerLayout菜单项:

  

•日历(带DrawerLayout的MainActivity)

     

•事件(使用DrawerLayout的MainActivity)

     

•配置文件(没有DrawerLayout的ProfileActivity)

     

•设置(没有DrawerLayout的SettingsActivity)

选择日历时显示的BottomNavigationView

|一天|周|月|

选择事件时显示的BottomNavigationView

|即将到来|收藏夹|私人|

到目前为止,我有以下布局文件:

activity_main.xml中

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

    <include
        layout="@layout/content_main"
        ... />

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

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

content_main.xml

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

    <FrameLayout
        android:id="@+id/content_frame"
        ... />

    <include layout="@layout/toolbar" />

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

我不知道如何或在何处实现BottomNavigationView,因此可以为Calendar显示一个菜单,可以为Events显示另一个菜单。我希望内容/片段可以在工具栏(AppBarLayout)和BottomNavigationView后面滚动。

我如何处理

的导航
  • NavigationView.OnNavigationItemSelectedListener

  • BottomNavigationView.OnNavigationItemSelectedListener
在MainActivity中

感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

将BottomNavigationView替换为包含不同元素的CustomView(日/周/月或即将/收藏/私有)。 单击NavigationView元素时将显示CustomView。将CustomView放在活动布局的底部。您可以在显示/隐藏CustomView(可见性已更改)时添加动画,以便与BottomNavigationView具有相同的效果