回收无法滚动内部ScrollView

时间:2015-12-22 07:39:45

标签: android android-recyclerview

我有一个下面的布局:

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

</android.support.v7.widget.RecyclerView>
使用LinearLayoutManager的recyclelerView,一个recyclelerView项是另一个使用GridLayoutManager的recyclelerView,设置gridLayoutRecyclerView的高度,但gridLayoutRecyclerView无法滚动内部

2 个答案:

答案 0 :(得分:0)

试试这段代码

 <android.support.v7.widget.RecyclerView
android:id="@+id/my_recycler_view"
android:scrollbars="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"/>

并参考此http://developer.android.com/training/material/lists-cards.html

检查实施后,原因如下。如果将RecyclerView放入ScrollView,则在测量步骤中,其高度未指定(因为ScrollView allows any height)并且等于最小高度(根据实现),显然为零。

您有几种方法可以解决此问题:

  • 将某个高度设置为RecyclerView
  • 将ScrollView.fillViewport设置为true
  • 或者将RecyclerView保留在ScrollView之外。

如果RecyclerView的高度不受限制 - 将其放入ScrollView就是这种情况 - 那么所有Adapter的视图都有足够的垂直位置并且可以一次创建。

答案 1 :(得分:0)

这是我的recyclelerView的布局

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

然后,一个出的recyclerView项目有另一个使用GridLayoutManager的RecyclerView,这是下面项目的代码:

<android.support.v7.widget.RecyclerView
        android:id="@+id/seatRecyclerView"
        android:layout_width="match_parent"
        android:layout_height="200dp"
        />

seatRecyclerView不能不滚动