web-dev-qa-db-ja.com

Scrollview内でRecyclerviewを使用する方法

ScrollView内に水平recyclerviewアイテムと垂直recyclerviewアイテムを表示しようとしています

Android:fillViewport = "true"を使用してもScrollviewが機能しませんでした

  <ScrollView
    Android:layout_width="match_parent"
    Android:layout_height="match_parent">
    <LinearLayout
        Android:layout_width="match_parent"
        Android:layout_height="match_parent"
        Android:orientation="vertical">
    //Horizontal Recyclerview items
    <RecyclerView
        Android:layout_width="match_parent"
        Android:layout_height="wrap_content">
    </RecyclerView>
    //vertical Recyclerview items
        <RecyclerView
            Android:layout_width="match_parent"
            Android:layout_height="match_parent"></RecyclerView>
    </LinearLayout>

</ScrollView>
13
AlgoCoder

代わりに NestedScrollView を使用する必要があります。ただし、独自のLayoutManagerを作成する必要がある場合があります。詳細はこちらをご覧ください SO Answer

12
akash93
  1. Scrollview内でrecyclerviewを使用するには、カスタムレイアウトマネージャーを使用する必要があります。

  2. Scrollviewを削除して、水平recyclerviewを含む垂直recyclerviewにヘッダー項目を作成できます。

また、スクロールビュー内でrecyclerviewを使用しないでください。したがって、2番目のアプローチの方が良いと思います。

また、 Snap-RecyclerView-Utils を使用できます。スクロールビュー内にrecyclerview用の線形レイアウトマネージャーと、水平recyclerviewを含むヘッダーを作成するのに役立つアダプターがあります。

4