滚动recyclerview时,scrollview内的视图不滚动

时间:2019-09-07 16:49:29

标签: android android-recyclerview scrollview

我有一个回收站视图,其中包含很多帖子。当我滚动recyclerview时,我的框架布局不滚动。它像导航栏一样固定。 我希望它滚动,好像它是recyclerview的一部分。 这是我的布局:

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#ffffff"
    tools:context=".HomePageFragment">

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

        <FrameLayout
            android:id="@+id/status_frame"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"></FrameLayout>

        <androidx.recyclerview.widget.RecyclerView
            android:id="@+id/recycler"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            ></androidx.recyclerview.widget.RecyclerView>

   </LinearLayout>
</ScrollView>

我尝试使用nestedScrollView,但它添加了额外的空帖。我不知道为什么。

enter image description here

我的frameLayout是状态部分。这是另一个recyclerview本身。在滚动帖子时,statuspart不会滚动。

1 个答案:

答案 0 :(得分:0)

为了使状态部分与recyclerview中的帖子一起滚动,状态部分也应该是recyclerview中的一项,因此在这种情况下,您需要recyclerview with multiple view typesPlase read: How to create recyclerview with multiple view types.

当使用具有多种视图类型的recyclerviews时,只需删除Framelayout即可。

次要改进

删除外部scrollview是不必要的,因为默认情况下recyclerview是可滚动的。

修改

为了使状态部件可水平滚动,状态部件的项目布局应包含recyclerview,其中LinearLayoutManager orientation set to horizontal.还要为水平recyclerview实施适配器类。

要开始使用具有多种视图类型的recyclerview,可以查看this tutorial


在这种情况下,您也可以使用Epoxy之类的库。