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

时间:2019-10-31 10:25:38

标签: android bottomnavigationview

我具有以下视图层次结构

<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 overlaps view above it

尝试使用谷歌搜索。请注意,组中的最后一个视图显示在前面,但是对于BottomNavigationView来说似乎并非如此。

那么,如何将BottomNavigationView明确移到其他视图后面?

2 个答案:

答案 0 :(得分:1)

使用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上,则使用elevationBottomNavigationView上的0dp来处理Z轴,如下所示:

app:elevation="0dp"

答案 1 :(得分:0)

似乎您需要设置底部导航视图的高程。尝试在底部导航视图标记中添加以下属性

android:elevation="0dp"