как выровнять текстовое представление в Constrainlayout - PullRequest
0 голосов
/ 13 мая 2019

Я разрабатываю новостное приложение, но не могу выровнять текстовое представление так, чтобы это накладывается на изображение, как я могу показать это правильно Я разрабатываю новостное приложение, но не могу выровнять textview так, чтобы это накладывается на изображение, как я могу показать это правильно ниже моего xml

<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@color/colorWhite"
    xmlns:app="http://schemas.android.com/apk/res-auto">
    android:layout_width="match_parent"
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">
    <android.support.constraint.Guideline
        android:layout_width="0dp"
        android:layout_height="0dp"
        android:orientation="vertical"
        app:layout_constraintGuide_percent="0.55"
        android:id="@+id/guideline"/>
    <ImageView
        android:layout_width="0dp"
        android:layout_height="0dp"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintStart_toEndOf="@id/guideline"
        app:layout_constraintDimensionRatio="16:9"
        android:layout_margin="16dp"
        android:id="@+id/articleImage"/>
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        android:id="@+id/articleAuthor"
        android:layout_marginStart="25dp"
        android:layout_marginTop="10dp"
        android:text="Placeholder"
        android:layout_marginLeft="25dp" />
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:layout_constraintTop_toBottomOf="@id/articleAuthor"
        app:layout_constraintStart_toStartOf="@id/articleAuthor"
        android:layout_marginTop="5dp"
        android:maxLines="2"
        android:text="Secondary"
        android:id="@+id/articleTitle"/>
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:layout_constraintTop_toBottomOf="@id/articleTitle"
        app:layout_constraintStart_toStartOf="@id/articleAuthor"
        app:layout_constraintBottom_toBottomOf="parent"
        android:layout_marginBottom="10dp"
        android:layout_marginTop="5dp"
        android:text="Tertiary"
        android:id="@+id/articleTime"/>

    <ImageButton
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:layout_constraintTop_toTopOf="@id/articleTime"
        app:layout_constraintBottom_toBottomOf="@id/articleTime"
        app:layout_constraintStart_toEndOf="@id/articleTime"
        android:layout_marginStart="15dp"
        android:id="@+id/articleShare"
        android:background="@color/colorWhite"
        android:src="@drawable/ic_share"
        android:layout_marginLeft="15dp" />
    <ImageButton
        android:id="@+id/articleFavorite"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:layout_constraintTop_toTopOf="@id/articleShare"
        app:layout_constraintBottom_toBottomOf="@id/articleShare"
        app:layout_constraintStart_toEndOf="@id/articleShare"
        android:layout_marginStart="15dp"
        android:background="@color/colorWhite"
        android:src="@drawable/ic_bookmark"
        android:layout_marginLeft="15dp" />
</android.support.constraint.ConstraintLayout>

ниже текущего снимка экрана приложения current screenshot of the app

ниже скриншота, которого я хочу достичь скриншот Я хочу

1 Ответ

0 голосов
/ 14 мая 2019

Добавьте этот атрибут к вашим articleAuthor и articleTitle TextViews:

app:layout_constraintEnd_toStartOf="@id/guideline"

Кроме того, установите для атрибута layout_width значение 0dp (т. Е. "Ограничения соответствия") для обоих этихте же виды:

android:layout_width="0dp"

Это приведет к тому, что TextViews будут настолько же широкими, как пространство между левым краем родительского и правым краем направляющей.Для текста, который короче этой ширины, вы получите одну строку с выравниванием по левому краю.Для текста, который длиннее этой ширины, вы получите несколько строк текста с выравниванием по левому краю, которые переносятся перед ImageView.

...