Изменить:
Этот макет является своего рода "чатом". Вы можете использовать два LinearLayout
, один из которых является родительским для match_parent
, а другой - два TextView
. Обратите внимание, что последний имеет wrap_content
ширина.
layout_weight
атрибут LinearLayout
означает ... грубо говоря, важно меньшее число.
Смотри также: https://developer.android.com/reference/android/widget/LinearLayout
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="test test test test test test test test test test test test test test test"
android:layout_weight="1"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello world"
android:layout_weight="0"/>
</LinearLayout>
<Space android:layout_width="wrap_content" android:layout_height="20dp"/>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="test test test test test test test test "
android:layout_weight="1"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello world"
android:layout_weight="0"/>
</LinearLayout>
</LinearLayout>
устаревший ответ
Обратите внимание, что textLeft
имеет ширину 0dp.
Если вы установите ширину (или высоту) в 0 в макете ограничения, это означает, что он заполнит оставшуюся часть пустого пространства.
Или, вы можете использовать app:layout_constraintHorizontal_weight
с шириной 0dp, вы можете установить процент от ширины макета.
<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="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/textLeft"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:text="Long Long Long Long Long Long Long Long Long Long Long Long Long"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toLeftOf="@id/textRight"
app:layout_constraintTop_toTopOf="parent"/>
<TextView
android:id="@+id/textRight"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World! "
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toRightOf="@id/textLeft"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"/>
</android.support.constraint.ConstraintLayout>