RecyclerView与GridLayoutManager和反向布局堆栈到底部



我使用RecyclerViewGridLayoutManager。在该布局管理器中,我调用setReverseLayout(true),以便元素以相反的顺序显示。

但是现在,RecyclerView最初是从列表的末尾显示的。我知道有一个setStackFromEnd(boolean)方法,但它与GridLayoutManager不兼容。

以相反顺序显示元素并且仍然从顶部显示RecyclerView的最佳方法是什么?

这是我的布局文件使用RecyclerView:

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.mgaetan89.showsrage.fragment.ShowsSectionFragment">
    <android.support.v7.widget.RecyclerView
        android:id="@android:id/list"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_margin="@dimen/grid_margin"
        android:clipToPadding="false"
        android:paddingBottom="@dimen/fab_spacing"/>
    <TextView
        android:id="@android:id/empty"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:text="@string/no_shows"
        android:visibility="gone"/>
    <android.support.design.widget.FloatingActionButton
        android:id="@+id/add_show"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom|end|right"
        android:layout_margin="@dimen/fab_margin"
        android:src="@drawable/ic_add_black_24dp"/>
</FrameLayout>

感谢@DeepLathia的回答。

使用下面的代码

Collections.reverse(yourList); // add your ArrayList

不要对GridLayoutManager做任何事情,因为GridLayoutManager不支持stackFromEnd(true)

我累了,找到解决方案与回收器视图所以最后我使用GridView

<GridView
    android:id="@+id/lv_explore"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_margin="5dp"
    android:dividerHeight="0dip"
    android:horizontalSpacing="5dp"
    android:numColumns="3"
    android:scrollbars="none"
    android:verticalSpacing="5dp"
    android:stackFromBottom="true" />
android:stackFromBottom="true"

最新更新