如何在回收者视图的项目之间插入视图?

时间:2019-05-22 14:24:15

标签: android android-recyclerview recyclerview-layout

我需要在recyclerview项目列表内显示嵌入的滑块(标记为绿色),如下图所示:

enter image description here

我认为我需要在recyclerview layout manager中进行一些更改,但是我不知道确切是什么,并且猜测它相当复杂。另外,我在这里使用FlexboxLayout

那么,您能帮我选择解决此问题的最佳方法吗?

2 个答案:

答案 0 :(得分:1)

您可以为该位置充气不同的视图,因为您要在该位置充气不同的布局。

此答案将帮助您:-RecyclerView with multiple view type

基本要点是使用getItemViewType并返回一个标志,例如,第一个红色框为1,第二个红色框为2,第三个红色框为3,并根据视图类型参数(在签名中)填充充气布局

答案 1 :(得分:0)

您可以轻松地解决它,以进行这样的布局。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:background="@color/recycler_view_item_background_color">

    <!-- Red layout-->
    <LinearLayout
        android:id="@+id/red_layout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:padding="@dimen/item_performance_list_padding"
        android:orientation="vertical">

        <TextView
            android:id="@+id/performance_date_text_view"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text=""/>        

    </LinearLayout>

    <!-- Blue Layout-->
    <LinearLayout
        android:id="@+id/blue_layout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@color/text_item_divider" />

</LinearLayout>

您可以根据需要显示或隐藏每个项目的蓝色布局。

LinearLayout blueLayout = (LinearLayout) findViewById(R.id.blue_layout);
blueLayout.setVisibility(View.GONE); // hide
blueLayout.setVisibility(View.VISIBLE); // show