RecyclerView在ScrollView中不显示所有项目

时间:2018-04-19 14:02:00

标签: android android-layout android-recyclerview nestedrecyclerview

我在RecyclerViews内的LinearLayout中有2 ScrollView

<ScrollView
    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"
    android:orientation="vertical"
    android:padding="@dimen/few_value">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical">

        <com.foodjoo.fjco.customViews.BYekanFontText
            android:id="@+id/market_category"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="right"
            android:padding="@dimen/normal_plus_value"
            android:text=" لبنیات > مارکت پیکی علی  "
            android:textAppearance="@style/Base.TextAppearance.AppCompat.Subhead"
            android:textColor="@color/light_black2" />

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

        <com.foodjoo.fjco.customViews.BYekanFontText
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="right"
            android:padding="@dimen/normal_plus_value"
            android:text="ساعات کار"
            android:textAppearance="@style/Base.TextAppearance.AppCompat.Subhead"
            android:textColor="@color/light_black2" />

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

    </LinearLayout>
</ScrollView>

两个回收者都有nestedScrollEnabled个火焰。

问题在于: 当渲染布局时,第一个recyclerView将填充,屏幕底部的第二个recyclerView将不会显示所有项目,因为第一个高度!! 但它应该滚动,因为它们都在scrollView !!

那么问题是什么?

2 个答案:

答案 0 :(得分:8)

使用NestedScrollView代替ScrollView

并将recyclerView.setNestedScrollingEnabled(false);添加到您的RecyclerView

答案 1 :(得分:0)

尝试向 recycleViews 提供手动height,因为它们都位于scrollview中,因此如果您提供wrap_content或{{1}则无效}}

match_parent