在ConstraintLayout

时间:2018-05-07 21:38:18

标签: android xml android-constraintlayout

我需要将两个TextViews与动态内容对齐,因此需要宽度。 ConstraintLayout工作正常,直到文本开始包装成多行。左视图在第二个视图的宽度上向左移动(超出左边框)。怎么避免呢?这是某种错误还是我忘记了使用ConstraintLayout错误的smth?

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_margin="16dp">

    <TextView
        android:id="@+id/textView2"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:text="textView2 Lorem ipsum "
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_chainStyle="packed"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintWidth_default="wrap" />


    <TextView
        android:id="@+id/textView1"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:background="@color/colorAccent"
        android:text="textView1 Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."
        app:layout_constraintEnd_toStartOf="@+id/textView2"
        app:layout_constraintHorizontal_chainStyle="packed"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="@+id/textView2"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintWidth_default="wrap" />

</android.support.constraint.ConstraintLayout>

移位查看图片

Shifted image

2 个答案:

答案 0 :(得分:0)

layout_constraintLeft_toLeftOf更改为layout_constraintStart_toStartOf,将layout_constraintRight_toRightOf更改为layout_constraintEnd_toEndOf,您将获得如下内容:

enter image description here

这假定ConstraintLayout版本1.1.0虽然可能无关紧要。

答案 1 :(得分:0)

您可能只是将其绑定到从第一个textview的末尾开始的准则。两种文本视图的结尾都可能与准则相关。

 <androidx.constraintlayout.widget.Guideline
    android:id="@+id/glMiddle"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    app:layout_constraintGuide_begin="56dp" />

将tv1与此相关并将tv2的起始与该相关