我想在单个活动中实现两个具有不同布局的RecyclerView。上面的RecyclerView应该垂直滚动,下面的那个应该水平滚动。但是当我运行应用程序时,只显示一个RecyclerView。如果显示第一个视图,则它可以正常工作并垂直滚动,而第二个RecyclerView丢失。如果显示第二个,那么当它应该进行水平滚动并且缺少第一个RecyclerView时它会垂直滚动。
Here is what i want.来源:Github,CardView-Recyclerview-Picasso
这是我的布局
<android.support.v4.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/colorBackgroundLight"
android:smoothScrollbar="true"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<android.support.v7.widget.RecyclerView
android:id="@+id/CategoriesRecyclerView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<android.support.v7.widget.RecyclerView
android:id="@+id/videoRecyclerView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="130dp"
android:layout_below="@+id/CategoriesRecyclerView"/>
</RelativeLayout>
</android.support.v4.widget.NestedScrollView>
答案 0 :(得分:0)
您可以直接使用没有NestedScrollView的2 Recycler Views。
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<android.support.v7.widget.RecyclerView
android:id="@+id/CategoriesRecyclerView"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
<android.support.v7.widget.RecyclerView
android:id="@+id/videoRecyclerView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginTop="130dp"
android:layout_below="@+id/CategoriesRecyclerView"/>
</RelativeLayout>
在您的CategoriesRecyclerView中,其高度为wrap_content,请在用于recyler视图的布局管理器上使用setAutoMeasureEnabled(true)
。
答案 1 :(得分:0)
如果要在页面滚动时滚动水平滚动视图完整的上部然后使用scrollview,否则您可以不使用scrollview。另外,为了实现您的布局,只需给出水平Recyclerview固定高度,然后您就可以看到两个recyclerview。