在您向上滑动RecyclerView时向上滑动,或在向下滑动时向下滑动recyclerview

我想要创build一个带有RecyclerViewFragment ,当您滑动它时,它会滑动并显示更多的项目。

这是我正在谈论的一个例子。

初始创作:

在这里输入图像说明

用户滑动向上滑动RecyclerView ,显示更多项目:

在这里输入图像说明

有几个问题,我想不使用CoordinatorLayout ,我想将它设置到RecyclerView中的项目直接放在EditText顶部。

这是我正在使用的布局代码:

 <android.support.design.widget.CoordinatorLayout android:id="@+id/coordinatorLayout" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" android:visibility="visible"> <android.support.design.widget.AppBarLayout android:id="@+id/appBarLayout" android:layout_width="match_parent" android:layout_height="400dp" android:background="@android:color/transparent" android:fitsSystemWindows="true" android:orientation="vertical"> <android.support.design.widget.CollapsingToolbarLayout android:id="@+id/collapsingToolbar" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@android:color/transparent" android:fitsSystemWindows="true" app:layout_scrollFlags="scroll|exitUntilCollapsed"> <View android:id="@+id/emptyView" android:layout_width="match_parent" android:layout_height="400dp" android:background="@android:color/transparent" app:layout_collapseMode="parallax"/> </android.support.design.widget.CollapsingToolbarLayout> </android.support.design.widget.AppBarLayout> <android.support.v7.widget.RecyclerView android:id="@+id/recyclerView" android:layout_width="match_parent" android:layout_height="wrap_content" app:layout_behavior="@string/appbar_scrolling_view_behavior"/> <RelativeLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical"> <EditText android:id="@+id/editText" android:paddingLeft="16dp" android:inputType="textAutoCorrect" android:layout_centerVertical="true" android:background="@android:color/transparent" android:layout_width="match_parent" android:layout_height="56dp"/> </RelativeLayout> </RelativeLayout> 

我得到这样的东西:

在这里输入图像说明

这绝对不是可扩展的,空洞的观点需要一致的衡量。

  • 使用AccessibilityService从(Facebook)RecyclerView中读取文本
  • 如何使用垂直GridLayoutManager水平居中放置RecyclerView项目
  • 什么导致这个exceptionjava.lang.RuntimeException:java.lang.NoSuchMethodException:<init>
  • 视差标题效果与RecyclerView
  • Android L的RecyclerView中的挑战
  • RecyclerView适配器显示错误的图像
  • 使用setNestedScrollingEnabled(false)时如何避免阻止滚动?
  • 在recyclerview中更改所选项目的背景颜色
  • 我通过使用自定义的TouchListener解决了这个问题,所有其他的解决scheme都是非常基本的,仅限于特定的盒装用例。

    我这样做的方式是基于这个库实现一个新的TouchListener

    BounceTouchListener

    我得到以下结果:

    在这里输入图像说明

    使用RecyclerView和两种types的行:

    1. 空行/行灰色(无分隔线)
    2. 您已经拥有内容的行

    RecyclerView将必须match_parent到整个片段

    因此,您将在RecyclerView上获得“空白”区域的正确效果。

    在这里输入图像说明

    你可以使用LinearLayoutManager的setReverseLayout

    用于反转项目遍历和布局顺序。 这与RTL视图的布局更改类似。 当设置为true时,第一项布置在UI的末尾,第二项布置在之前等等。对于水平布局,取决于布局方向。 当设置为true时,如果RecyclerView是LTR,比从RTL布局,如果RecyclerView}是RTL,它将从LTR布局。 如果您正在查找与setStackFromBottom(boolean)完全相同的行为,请使用setStackFromEnd(boolean)