底部导航栏与其上方的视图重叠

Bottom Navigation Bar overlaps view above it

我有以下视图层次结构

<androidx.coordinatorlayout.widget.CoordinatorLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".activity.MainActivity"
    >

    ...

        <com.google.android.material.bottomnavigation.BottomNavigationView
            android:id="@+id/am_bottom_navigation"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:background="@color/colorPrimary"
            app:itemIconTint="@drawable/bottom_navigation_colors"
            app:itemTextColor="@drawable/bottom_navigation_colors"
            app:labelVisibilityMode="unlabeled"
            app:menu="@menu/menu_bottom_navigation"
            />

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

        <View
            android:id="@+id/am_fade_background"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:alpha="0.5"
            android:visibility="gone"
            android:background="@android:color/black"
            android:layerType="hardware"
            />

        <FrameLayout
            android:id="@+id/am_tracker_over_layout"
            android:visibility="gone"
            android:layout_margin="20dp"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_centerInParent="true"
            />

    </RelativeLayout>

我希望 am_tracker_over_layout 显示在所有其他内容之前,但 BottomNavigationView 领先。为清楚起见,将其设为透明。

尝试用谷歌搜索。阅读组中的最后一个视图显示在前面,但 BottomNavigationView 似乎并非如此。

那么,我怎样才能明确地将 BottomNavigationView 移到其他视图后面?

使用 layout_above 属性 到 FrameLayout 将其放在 BottomNavigationView 上方,如下所示:

<FrameLayout
    android:id="@+id/am_tracker_over_layout"
    android:visibility="gone"
    android:layout_margin="20dp"
    android:layout_above="@+id/am_bottom_navigation"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_centerInParent="true"/>

或者如果你想在 BottomNavigationView 上重叠它,那么在 BottomNavigationView 上使用 elevation 到 0dp 来处理 Z 轴,如下所示:

app:elevation="0dp"

您似乎需要设置底部导航视图高度。尝试在底部导航视图标签

中添加以下内容 属性
android:elevation="0dp"