首页 > 解决方案 > 如何在 CoordinatorLayout 中垂直排列的其他两个视图之间放置一个视图?

问题描述

我有一个布局文件,我在其中使用 aCollapsingToolbarLayout和 aRecyclerView并且工作正常。现在我试图ConstraintLayout在 myAppBarLayoutRecylerView. 这是我到目前为止所尝试的:

<androidx.coordinatorlayout.widget.CoordinatorLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <com.google.android.material.appbar.AppBarLayout
        android:layout_width="match_parent"
        android:layout_height="272dp"
        android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">

        <com.google.android.material.appbar.CollapsingToolbarLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:id="@+id/collapsing_toolbar_layout"
            app:layout_scrollFlags="scroll|exitUntilCollapsed">

            <RelativeLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent">

                <!--Some views-->
            </RelativeLayout>

            <androidx.appcompat.widget.Toolbar
                android:layout_width="match_parent"
                android:layout_height="?attr/actionBarSize"
                android:id="@+id/toolbar"
                app:layout_collapseMode="pin"/>
        </com.google.android.material.appbar.CollapsingToolbarLayout>
    </com.google.android.material.appbar.AppBarLayout>

    <androidx.constraintlayout.widget.ConstraintLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

            <!--Some views-->
    </androidx.constraintlayout.widget.ConstraintLayout>

    <androidx.recyclerview.widget.RecyclerView
        android:id="@+id/beers_recycler_view"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager"
        app:layout_behavior="@string/appbar_scrolling_view_behavior"/>
</androidx.coordinatorlayout.widget.CoordinatorLayout>

问题是,即使我将它放在AppBarLayout和之间,它仍然位于活动的底部RecylerView。谁能帮我ConstraintLayout在他们之间放置视图?谢谢

标签: androidandroid-coordinatorlayout

解决方案


你为什么不试试把你的RecyclerView放进去ConstraintLayout

下面CollapsingToolbarLayout

<androidx.core.widget.NestedScrollView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        >
        <ConstraintLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

      <!--Your views here with constraints-->

        <androidx.recyclerview.widget.RecyclerView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            app:layout_constraintTop_toBottomOf="your last view"
                 />
    </ConstraintLayout>

推荐阅读