我正在尝试查看app:layout_constrainedWidth="true"
在ConstraintLayout中的使用示例,但我并没有取消对该属性的使用。在哪些情况下,我应该使用设置为true的属性?谢谢你的帮助
发布于 2022-11-11 21:47:01
app:layout_constrainedWidth="true"
是使ConstraintLayout尊重宽度为“with”的视图的约束。这里是一个更全面的解释。
WRAP_CONTENT :强制执行约束(添加在1.1中) 如果将维度设置为WRAP_CONTENT,在1.1之前的版本中,它们将被视为文字维度--这意味着,约束不会限制结果维度。虽然通常这已经足够(而且更快),但在某些情况下,您可能希望使用WRAP_CONTENT,但仍然要强制执行约束以限制结果维度。在这种情况下,您可以添加一个相应的属性: App:layout_constrainedWidth=“真假”app:layout_constrainedHeight=“真假”
假设我们有以下布局:
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:text="Left TextView"
android:textSize="16sp"
android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.8" />
<TextView
android:id="@+id/textView4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="16dp"
android:text="I am a TextVIew with some very long text. How is it going to be handled?"
android:textSize="16sp"
android:textStyle="bold"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toEndOf="@+id/textView"
app:layout_constraintTop_toTopOf="@+id/textView" />
</androidx.constraintlayout.widget.ConstraintLayout>
这将显示为
正如您所看到的,正确的TextView文本被切断了--正确的约束没有得到遵守。现在,让我们将app:layout_constrainedWidth="true"
添加到右边的TextView。现在就会看到
视图仍然是wrap_content
,但正确的约束得到了遵守。
https://stackoverflow.com/questions/74407679
复制相似问题