Приоритет усечения Android TextView или сопротивление сжатию [дубликаты]

На этот вопрос уже есть ответ здесь:

Расширяйте TextView с помощью wrap_content, пока соседний вид не достигнет конца родительского 6 ответов

Я выкладываю 3 вида по горизонтали на экране (изображение фиксированного размера и 2 однострочных текста:leftTextView а такжеrightTextView) и я пытаюсь получитьrightTextView обнять противleftTextView, но в случае, если ширина обеих меток превысит размер экрана, обрежьтеleftTextiew.

Пример желаемой функциональности:

|img|leftText|rightText|                ||(end of screen)
|img|leftTextMedium|rightText|          ||
|img|leftTextTooLongSoTrunc...|rightText||

Что на самом деле происходит:

|img|leftText|rightText|                ||(end of screen)
|img|leftTextPrettyLongButNotHuge|rightT||
|img|leftTextWhichIsIncrediblyLongBlahBl||

В настоящее время, если размер обоих текстовых представлений превышает ширину представления,rightTextView заканчивает тем, что был раздавлен, чтобы освободить место, хотя я установилandroid:ellipsize="end" наleftTextView.

Есть ли способ сделатьleftTextView иметь "приоритет усечения", который говорит, что должен усечь, если это заставит другие представления не соответствовать? Или на другой стороне, могу ли я установитьrightTextView иметь «сопротивление сжатию», чтобы он не был сжат, чтобы освободить место дляleftTextView? Вот пример моего XML:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content">

    <ImageView
        android:id="@+id/fixedWidthImage"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true" />

    <TextView
        android:id="@+id/leftTextView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_toEndOf="@+id/fixedWidthImage"
        android:layout_toRightOf="@id/fixedWidthImage"
        android:maxLines="1"
        android:textSize="18sp"
        android:ellipsize="end" />

    <TextView
        android:id="@+id/rightTextView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_toEndOf="@+id/leftTextView"
        android:layout_toRightOf="@+id/leftTextView"
        android:layout_alignParentEnd="true"
        android:layout_alignParentRight="true"
        android:maxLines="1"
        android:textSize="12sp" />

</RelativeLayout>

Вещи, которые я пробовал:

вleftTextView, добавитьtoStartOf / toLeftOf rightTextView (вылетает приложение)

Вместо выравниванияrightTextView до конца / справа отleftTextViewпереверните и выровняйтеleftTextView к началу / слева отrightTextView, Это приводит кrightTextView привязка к концу экрана, а не прямо справа отleftTextView, Пример того, как это выглядит:

|img|leftText                 |rightText||
|img|leftTextMedium           |rightText||
|img|leftTextTooLongSoTrunc...|rightText||

Даже если я поставлюandroid:minWidth="25dp" просто чтобы обеспечить хотя бычасть изrightTextView является видимым (что я не хочу делать, потому что эта длина текста является переменной), он все равно сжимает ширину, чтобы освободить место дляleftTextView.

вЭмануэль Меклинответ, я попытался завернуть вLinearLayout и установив вес наleftTextView, Результат был визуально идентичен тому, что я пробовал в # 2.

Ответы на вопрос(4)

Ваш ответ на вопрос