在nestedscrollview中无限滚动的Recyclerview触发onScrolled

时间:2016-05-06 13:13:21

标签: android android-recyclerview endlessscroll android-nestedscrollview

我在nestedscrollview中有recyclelerview:

   <android.support.v4.widget.NestedScrollView
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical">

            <org.apmem.tools.layouts.FlowLayout
                android:id="@+id/filter_view"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:background="@color/green_main"
                android:paddingLeft="@dimen/small_horizontal_margin"
                android:paddingRight="@dimen/small_horizontal_margin"
                />

            <android.support.v7.widget.RecyclerView
                app:layout_behavior="@string/appbar_scrolling_view_behavior"
                android:id="@+id/recycler_view"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:clipToPadding="false"
                android:scrollbars="vertical"
                android:paddingTop="@dimen/vertical_margin"/>

        </LinearLayout>
  </android.support.v4.widget.NestedScrollView>

Recyclerview有OnScrollListener,它正在处理从此示例中获取的无限滚动:https://guides.codepath.com/android/Endless-Scrolling-with-AdapterViews-and-RecyclerView。但是看起来nestedscrollview正在触发onScrolled方法,所以整个项目列表都会立即加载。

问题: 我该如何防止这种行为?

请注意,一切都与recyclerview完美配合,而不是在nestedscrollview中

1 个答案:

答案 0 :(得分:2)

尝试在RecyclerView上禁用嵌套滚动:

recyclerView.setNestedScrollingEnabled(false);

使用错误的嵌套滚动解决了我的问题。如果有帮助,请告诉我。