Android 单活动多片段场景中的协调器布局

Android 单活动多片段场景中的协调器布局,android,android-fragments,android-coordinatorlayout,coordinator-layout,Android,Android Fragments,Android Coordinatorlayout,Coordinator Layout,我有一个顶部导航栏,上面有一个工具栏,在协调器布局中。前面提到的布局是片段的父级,片段将放置在framelayout容器中 其中一个片段在底部包含一个按钮和一个具有匹配父级宽度和高度的recyclerview 我想在用户向下滚动时隐藏appbar(并保留导航栏)和按钮,在用户向上滚动时再次显示它们 我尝试将app:layout\u behavior=“@string/appbar\u scrolling\u view\u behavior”添加到包含片段的framelayout中,appbar正

我有一个顶部导航栏,上面有一个工具栏,在协调器布局中。前面提到的布局是片段的父级,片段将放置在framelayout容器中

其中一个片段在底部包含一个按钮和一个具有匹配父级宽度和高度的recyclerview

我想在用户向下滚动时隐藏appbar(并保留导航栏)和按钮,在用户向上滚动时再次显示它们

我尝试将
app:layout\u behavior=“@string/appbar\u scrolling\u view\u behavior”
添加到包含片段的framelayout中,appbar正确隐藏,但按钮仅在我向下滚动时出现(就好像片段视图中有一个边距\u top)。因此,我尝试将其切换到片段视图中,现在按钮正确隐藏,但appbar不移动

这是活动布局:

<androidx.coordinatorlayout.widget.CoordinatorLayout
    android:id="@+id/parent"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true"
    android:orientation="vertical">

    <FrameLayout
        android:id="@+id/container"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@color/light_grey"
        app:layout_behavior="@string/appbar_scrolling_view_behavior"/>

    <com.google.android.material.appbar.AppBarLayout
        android:id="@+id/bar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@color/transparent"
        app:elevation="10dp">

        <com.google.android.material.appbar.CollapsingToolbarLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@color/main_color2"
            app:layout_scrollFlags="scroll|enterAlways">

            <androidx.constraintlayout.widget.ConstraintLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content">

                <androidx.appcompat.widget.AppCompatTextView
                    android:id="@+id/userName"
                    style="@style/titleText"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_marginLeft="8dp"
                    android:layout_marginStart="8dp"
                    android:layout_marginTop="8dp"
                    android:gravity="start"
                    android:maxLines="1"
                    android:text="Saber Oueslati"
                    android:textColor="@color/white"
                    app:layout_constraintEnd_toStartOf="@+id/balance"
                    app:layout_constraintHorizontal_bias="0.5"
                    app:layout_constraintHorizontal_chainStyle="spread_inside"
                    app:layout_constraintStart_toStartOf="parent"
                    app:layout_constraintTop_toTopOf="parent" />

                <androidx.appcompat.widget.AppCompatTextView
                    android:id="@+id/balance"
                    style="@style/titleText"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_marginBottom="8dp"
                    android:layout_marginEnd="8dp"
                    android:layout_marginRight="8dp"
                    android:gravity="end"
                    android:maxLines="1"
                    android:text="150,000,000 TND"
                    android:textColor="@color/white"
                    app:layout_constraintBottom_toBottomOf="parent"
                    app:layout_constraintEnd_toEndOf="parent"
                    app:layout_constraintHorizontal_bias="0.5"
                    app:layout_constraintStart_toEndOf="@+id/userName"
                    app:layout_constraintTop_toTopOf="@+id/userName"
                    app:layout_constraintVertical_bias="0.0" />

            </androidx.constraintlayout.widget.ConstraintLayout>

        </com.google.android.material.appbar.CollapsingToolbarLayout>

        <devlight.io.library.ntb.NavigationTabBar
            android:id="@+id/navBar"
            android:layout_width="match_parent"
            android:layout_height="60dp"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent"
            app:ntb_badge_bg_color="@color/main_color2"
            app:ntb_badge_gravity="bottom"
            app:ntb_badge_position="left"
            app:ntb_badge_title_color="@color/white"
            app:ntb_badge_use_typeface="true"
            app:ntb_badged="true"
            app:ntb_bg_color="@color/white"
            app:ntb_inactive_color="@color/grey"
            app:ntb_scaled="true"
            app:ntb_title_mode="active"
            app:ntb_title_size="12sp"
            app:ntb_titled="true" />
    </com.google.android.material.appbar.AppBarLayout>
</androidx.coordinatorlayout.widget.CoordinatorLayout>

这个问题运气好吗?恐怕不行。我尝试了很多东西,但我总是以浮动按钮不隐藏或工具栏不隐藏而告终。这个问题运气好吗?恐怕不行。我尝试了很多东西,但我总是最终要么浮动按钮不隐藏,要么工具栏不隐藏。
<androidx.constraintlayout.widget.ConstraintLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".cart.CartFragment">

    <androidx.appcompat.widget.AppCompatImageView
        android:id="@+id/sadFace"
        android:layout_width="0dp"
        android:layout_height="150dp"
        android:layout_marginBottom="8dp"
        android:layout_marginEnd="8dp"
        android:layout_marginLeft="8dp"
        android:layout_marginRight="8dp"
        android:layout_marginStart="8dp"
        android:layout_marginTop="8dp"
        android:visibility="gone"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:srcCompat="@drawable/ic_sad" />

    <androidx.appcompat.widget.AppCompatTextView
        android:id="@+id/sadMessage"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="5dp"
        android:layout_marginTop="8dp"
        android:text="Your cart is empty..."
        android:textAlignment="center"
        android:visibility="gone"
        app:layout_constraintEnd_toEndOf="@+id/sadFace"
        app:layout_constraintStart_toStartOf="@+id/sadFace"
        app:layout_constraintTop_toBottomOf="@+id/sadFace" />

    <androidx.recyclerview.widget.RecyclerView
        android:id="@+id/recList"
        android:layout_width="0dp"
        android:layout_height="0dp"
        android:visibility="visible"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        tools:listitem="@layout/cart_item" />

    <com.google.android.material.button.MaterialButton
        android:id="@+id/checkout"
        style="@style/customButton"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginBottom="8dp"
        android:layout_marginEnd="24dp"
        android:layout_marginLeft="24dp"
        android:layout_marginRight="24dp"
        android:layout_marginStart="24dp"
        android:text="CheckOut"
        app:layout_behavior="com.gpg.gppay.utils.ScrollAwareFABBehavior"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent" />

    <androidx.constraintlayout.widget.Group
        android:id="@+id/noProduct"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:visibility="gone"
        app:constraint_referenced_ids="sadFace,sadMessage" />

</androidx.constraintlayout.widget.ConstraintLayout>