使用 RecyclerView 进行双向滚动

Two-way scrolling with RecyclerView

如何在一侧(水平/垂直)显示非常大的项目列表,并允许其自由滚动/拖动 - 如 Google 表格?

我试过使用 NestedScrollViewRecyclerView,但是你一次只能在一个方向上滚动,我需要它能够自由拖动(不捏/缩放功能是必需的,但如果可以完成,那就是一个奖励)。

这是我尝试过的 GIF,它可以工作,但绝对不是我要找的。

这是布局文件:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <include
        layout="@layout/include_toolbar"
        android:id="@+id/toolbar" />

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

        <android.support.v7.widget.RecyclerView
            android:id="@+id/recycler_biscroll"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />

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

</LinearLayout>

您是否尝试过将回收站视图放入滚动视图中?

我终于得到了答案:使用自定义 LayoutManager 实现。

我删除了外部 ScrollView,在我的代码中添加了 FixedGridLayoutManager,然后将其用作 RecyclerView 的布局管理器:

FixedGridLayoutManager layoutManager = new FixedGridLayoutManager();
layoutManager.setTotalColumnCount(adapter.getItemCount()); // This probably needs to update when item count is changed
recyclerView.setLayoutManager(layoutManager);