垂直偏差和指南在 recyclerview android 中不起作用
Posted
技术标签:
【中文标题】垂直偏差和指南在 recyclerview android 中不起作用【英文标题】:Vertical bias and guidlines are not working in recyclerview android 【发布时间】:2021-12-10 16:53:51 【问题描述】:我想使用垂直偏移来始终查看顶部,但是我想使用指南来限制屏幕上的高度。但是,如果我使用高度环绕内容,直到我将其设置为高度 0dp,它才会起作用。有什么更好的方法吗?
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout 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_
android:layout_
android:background="@color/white">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recylerview"
android:layout_
android:layout_
android:paddingStart="10dp"
android:paddingEnd="10dp"
android:paddingBottom="10dp"
app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager"
app:layout_constraintBottom_toBottomOf="@+id/guidelines"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0" />
<androidx.constraintlayout.widget.Guideline
android:id="@+id/guideline"
android:layout_
android:layout_
android:orientation="horizontal"
app:layout_constraintGuide_percent="0.9" />
</androidx.constraintlayout.widget.ConstraintLayout>
添加@Ivo 回答后
<androidx.constraintlayout.widget.ConstraintLayout 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_
android:layout_
android:background="@color/white">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/RecyclerView"
android:layout_
android:layout_
android:paddingStart="10dp"
android:paddingEnd="10dp"
android:paddingBottom="10dp"
app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager"
app:layout_constraintBottom_toTopOf="@+id/guideline"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHeight_default="wrap"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.0" />
<androidx.constraintlayout.widget.Guideline
android:id="@+id/guideline"
android:layout_
android:layout_
android:orientation="horizontal"
app:layout_constraintGuide_percent="0.9" />
</androidx.constraintlayout.widget.ConstraintLayout>
但问题是我的最后一个视图正在切割
【问题讨论】:
现在到底出了什么问题?我认为它现在是否已在指南中被切断?这不正是你想要的吗?或者您希望它如何工作? @IvoBeckers 我的 recylerview 低于指导线。我不想在指导线之外查看,我希望默认高度换行 【参考方案1】:我不确定我是否完全理解它,但我认为您实际上希望在您的指南中使用 android:orientation="horizontal"
而不是 android:orientation="vertical"
编辑:
尝试使用 0dp 并将 app:layout_constraintHeight_default="wrap"
添加到您的回收站视图中
【讨论】:
如果我在指南中使用水平,我如何限制回收站视图的高度? 一条准则就是一条线。你希望你的 recyclerview 高于这条线。所以这条线从左到右。所以它是一条水平线 你说得对,我更新了代码。 但主要问题是如果我将 recylerview 高度设置为 0dp 它会限制行。但是,如果我使用包装内容,它就不起作用。我主要想要屏幕顶部的回收站视图。 是的,例如,如果我的项目是一两个,我想在屏幕顶部显示。如果项目超过 5 比我想显示完整的 recyclerview 直到指南。以上是关于垂直偏差和指南在 recyclerview android 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章
在水平和垂直的recyclerview中膨胀布局,具有recycler视图的FlexboxLayout添加视图水平自动垂直