如何使用约束布局设置recyclerview的最小高度为wrap_content,但最大高度为百分比?(关于IT技术)

7

我有一个RecyclerView,并且正在使用约束布局。现在我想要将高度设置为wrap_content,但是想要以百分比设置最大高度。我该如何使用约束布局实现这一目标?

   <androidx.recyclerview.widget.RecyclerView
    android:id="@+id/recyclerView"
    android:layout_width="match_parent"
    android:visibility="gone"

    app:layout_constraintTop_toBottomOf="@+id/search_view"

    android:layout_height="0dp"
    app:layout_constraintHeight_default="wrap"
    app:layout_constraintHeight_max="500dp"
    android:scrollbars="vertical"/>

当内容超过最大高度时会发生什么? - Francesco Bocci
@FrancescoBocci 那就好,它可以正常地包装内容。 - Wahdat Jan
使用约束布局指南,并将单位更改为百分比,将回收视图约束到指南。 - d-feverx
2个回答

0

由于您正在使用ConstraintLayout,因此您可以使用以下方式使用Guideline来约束RecyclerView的高度。

<androidx.constraintlayout.widget.Guideline
        android:id="@+id/guideline3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        app:layout_constraintGuide_percent="0.85"/>

    <androidx.recyclerview.widget.RecyclerView
        android:id="@+id/recyclerView"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:scrollbars="vertical"
        app:layout_constraintTop_toBottomOf="@+id/search_view"
        app:layout_constraintBottom_toBottomOf="@id/guideline3" />

Guideline中有一个layout_constraintGuide_percent,您可以在其中指定RecyclerView所需的百分比。


0
你可以试试这个
    app:layout_constraintHorizontal_bias
    app:layout_constraintVertical_bias
    app:layout_constraintHeight_percent="0.17

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接