【发布时间】:2020-09-13 18:19:02
【问题描述】:
我有一个 Activity,其布局中有一个 BottomNavigationView:
<androidx.coordinatorlayout.widget.CoordinatorLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<androidx.fragment.app.FragmentContainerView
android:id="@+id/nav_host"
android:layout_width="match_parent"
android:layout_height="match_parent"
/>
<com.google.android.material.bottomnavigation.BottomNavigationView
android:id="@+id/bottom_navigation"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
app:layout_behavior="@string/hide_bottom_view_on_scroll_behavior"
app:menu="@menu/menu_home_bottom_navigation"
/>
</androidx.coordinatorlayout.widget.CoordinatorLayout>
我的bottom_avigation 用片段更改nav_host FragmentContainerView。所有这些片段都有NestedScrollView 或RecyclerView,并且由于app:layout_behavior="@string/hide_bottom_view_on_scroll_behavior",我的bottom_navigation 自动隐藏/显示在scrollDown/scrollUp。
我看到了这个问题:Hide/Show bottomNavigationView on Scroll 。我目前正在使用 Abhishek Singh 给出的答案,但问题不是这个。
这是我的问题:想象一下 FragA 和 FragB 都有 RecyclerViews 但 FragA 的项目较少,导致所有项目都适合屏幕且不可滚动。现在,当我从FragA 切换到FragB 然后向下滚动时,bottom_navigation 会以动画形式隐藏,如果我按下后退按钮,我将看不到bottom_navigation,因为FragA 不可滚动,我无法通过滚动使其可见.
我也在FragAonResume 事件中尝试了bottom_navigation.visibility = View.Visible,但仍然无法正常工作。我认为它以某种方式将bottom_navigation 翻译到底部,因此这段代码没有帮助。
那么我该如何解决这个问题呢?
【问题讨论】:
-
这能回答你的问题吗? Hide/Show bottomNavigationView on Scroll
-
@LaurentiuDaniel 不,它只是自动隐藏/显示底部导航的解决方案。我现在正在使用它。
标签: android material-design android-animation bottomnavigationview