允许TextView增长到约束布局中的特定点

问题描述 投票:1回答:2

有TextView1和TextView2。 TextView2应该浮在TextView1的右侧。只要两个文本视图的总宽度不使TextView2与右侧的框重叠,则TextView1应该向右侧增大。发生这种情况时,TextView1应该换行到第二行。

[只有一个TextView时,可以通过将TextView的宽度设置为0dp并将大小限制在框内来实现。但是有两个文本视图,我不知道如何实现。

enter image description here

android android-constraintlayout
2个回答
0
投票

您可以通过使用以下属性来实现:

  • app:layout_constraintHorizontal_bias="0":确保第一个文本视图的左侧没有空格。
  • app:layout_constraintHorizontal_chainStyle="packed":删除文本视图链中项目之间的间距。
  • [app:layout_constrainedWidth="true":允许在文本视图上使用wrap_content,但如果文本太长则仍然可以换行。

这里是布局:

<TextView
    android:id="@+id/text_view_1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_margin="8dp"
    app:layout_constrainedWidth="true"
    app:layout_constraintEnd_toStartOf="@id/text_view_2"
    app:layout_constraintHorizontal_chainStyle="packed"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent"
    tools:text="Very long text in this text"
    app:layout_constraintHorizontal_bias="0"
    />

<TextView
    android:id="@+id/text_view_2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_margin="8dp"
    app:layout_constraintEnd_toStartOf="@id/box"
    app:layout_constraintStart_toEndOf="@id/text_view_1"
    app:layout_constraintTop_toTopOf="parent"
    tools:text="Text"
    />

<View
    android:id="@+id/box"
    android:layout_width="100dp"
    android:layout_height="100dp"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintTop_toTopOf="parent"
    />

我建议您尝试删除每个属性,以查看它们的作用。


-1
投票

在您的textview1

android:maxLines =“ 5”

© www.soinside.com 2019 - 2024. All rights reserved.