【问题标题】:Move snackbar above bottomNavigationView将小吃栏移到底部导航视图上方
【发布时间】:2021-04-03 22:30:03
【问题描述】:

我在 CoordinatorLayout 中有一个 BottomNavigationView,我想将小吃栏移到 bottomNavigationView 上方,但小吃栏在 bottomNavigationView 后面可见

我的 navigationView 当滚动显示/隐藏小吃店可见时隐藏

activity_main.xml

<androidx.coordinatorlayout.widget.CoordinatorLayout 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:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/main_coordinatorLayout"
    tools:context=".MainActivity">

    <androidx.appcompat.widget.Toolbar
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@color/colorPrimary"
        android:theme="@style/Theme.AppCompat.Light.DarkActionBar"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent">

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:fontFamily="@font/open_sans_bold"
            android:text="@string/app_name"
            android:textColor="#FFF"
            android:textSize="20sp"
            tools:layout_editor_absoluteX="143dp"
            tools:layout_editor_absoluteY="14dp" />

    </androidx.appcompat.widget.Toolbar>

    <androidx.viewpager.widget.ViewPager
        android:id="@+id/main_viewpager"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:layout_behavior="@string/appbar_scrolling_view_behavior"
        app:layout_constraintBottom_toTopOf="@+id/bottom_navigation"
        app:layout_constraintEnd_toEndOf="parent"
        android:layout_marginTop="?actionBarSize"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/toolbar" />

    <com.google.android.material.bottomnavigation.BottomNavigationView
        android:id="@+id/bottom_navigation"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="#FFFFFF"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:labelVisibilityMode="auto"
        android:layout_gravity="bottom"
        app:itemTextColor="@color/nav_color"
        app:itemIconTint="@color/nav_color"
        app:menu="@menu/bottom_navigation_menu" />
</androidx.coordinatorlayout.widget.CoordinatorLayout>

片段.java

Snackbar.make(getActivity().findViewById(R.id.main_coordinatorLayout),"Message",Snackbar.LENGTH_INDEFINITE).show();

抱歉我的英语不好

【问题讨论】:

  • 您需要提供一个不包含 BottomNav 的 ViewGroup,尝试提供 R.id.main_viewpager 并查看它是否有效。

标签: android bottomnavigationview android-snackbar


【解决方案1】:

在谷歌材料组件库中,您可以使用Snackbar 与锚方法如下:

    Snackbar snackbar = Snackbar.make(view,"text",Snackbar.LENGTH_SHORT);
    snackbar.setAnchorView(bottomNavigationView);
    snackbar.show();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多