如何在没有 NestedScrollview 的情况下在 CoordinatorLayout 中使用 RecyclerView? (滚动行为不起作用)

How to use a RecyclerView in a CoordinatorLayout but without NestedScrollview ? (Scroll behaviors are not working)

我使用 CollapsingToolbarLayoutBottomAppBar 来响应 CoordinatorLayout 中的滚动变化(折叠并隐藏在滚动中)。因为我不能使用 NestedScrollview 作为 RecyclerView 的父级,因为当我需要使用 scrollToPosition() 或当项目被拖出边界时它会导致问题(它不会' t 滚动以移动项目),滚动行为不适用于 CollapsingToolbarLayoutBottomAppBar.

我尝试了 android:nestedScrollingEnabled="true" 但它不起作用

如何在没有 NestedScrollviewCoordinatorLayout 中保留与滚动相关的行为?

<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:fitsSystemWindows="true">

    <com.google.android.material.appbar.AppBarLayout
        android:id="@+id/app_bar"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:fitsSystemWindows="true"
        android:theme="@style/Theme.Todolist.AppBarOverlay">     

        <com.google.android.material.appbar.CollapsingToolbarLayout
             android:id="@+id/toolbar_layout"
             android:layout_width="match_parent"
             android:layout_height="@dimen/app_bar_height"
             android:background="@color/colorPrimary"
             android:fitsSystemWindows="true"
             android:theme="@style/ThemeOverlay.MaterialComponents.ActionBar"
             app:contentScrim="@color/colorPrimary"
             app:layout_scrollFlags="exitUntilCollapsed|scroll"
             app:toolbarId="@+id/toolbar">

        <androidx.appcompat.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            android:background="@color/colorPrimary"
            app:layout_collapseMode="pin"
            app:popupTheme="@style/Theme.Todolist.PopupOverlay"
            app:title="Mes tâches"
            app:titleTextColor="@color/iconTint"/>

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

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

    <androidx.recyclerview.widget.RecyclerView
        android:id="@+id/tasks_recyclerview"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@color/background"
        app:layout_behavior="@string/appbar_scrolling_view_behavior"
        android:clipToPadding="false"
        android:paddingBottom="32dp"/>

    <com.google.android.material.bottomappbar.BottomAppBar
        android:id="@+id/bottomAppBar"
        style="@style/Widget.MaterialComponents.BottomAppBar.Colored"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom"
        app:hideOnScroll="true"
        app:menu="@menu/bottom_app_bar"
        app:navigationIcon="@drawable/ic_menu_black_24dp" />
  
    <com.google.android.material.floatingactionbutton.FloatingActionButton
        android:id="@+id/fab"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:contentDescription="@string/add_task_text"
        app:backgroundTint="@color/floatingAddButton"
        app:layout_anchor="@+id/bottomAppBar"
        app:layout_anchorGravity="top|center"
        app:maxImageSize="50dp"
        app:srcCompat="@drawable/ic_add_black_48dp"
        app:tint="@color/addIconTint" />

</androidx.coordinatorlayout.widget.CoordinatorLayout>

使用 android:nestedScrollingEnabled="true"