web-dev-qa-db-ja.com

ConstraintLayoutは、textviewのテキストを切り取ります

ConstraintLayoutにいくつかのビューがあり、何らかの理由でtextviewが文の終わりに向かって途切れてしまいます。 textviewは、左右に制限されています。 tv_product_descriptiontextviewです。

<Android.support.constraint.ConstraintLayout
    Android:id="@+id/ll_product_holder"
    Android:layout_width="match_parent"
    Android:layout_height="wrap_content"
    Android:layout_marginLeft="16dp"
    Android:layout_marginRight="16dp"
    Android:layout_marginTop="16dp"
    Android:background="@drawable/drawable_border"
    Android:orientation="vertical">

    <com.facebook.drawee.view.SimpleDraweeView
        Android:id="@+id/iv_product_image"
        Android:layout_width="100dp"
        Android:layout_height="100dp"
        Android:layout_marginBottom="8dp"
        Android:layout_marginLeft="9dp"
        Android:layout_marginStart="9dp"
        Android:layout_marginTop="13dp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/price_holder"
        fresco:actualImageScaleType="centerCrop"
        fresco:placeholderImage="@drawable/placeholder2"/>

    <TextView
        Android:id="@+id/tv_product_id"
        Android:layout_width="wrap_content"
        Android:layout_height="wrap_content"
        Android:layout_marginLeft="9dp"
        Android:layout_marginStart="9dp"
        Android:layout_marginTop="13dp"
        Android:text="@{historyItem.productId}"
        app:layout_constraintLeft_toRightOf="@+id/iv_product_image"
        app:layout_constraintTop_toBottomOf="@+id/price_holder"/>

    <TextView
        Android:id="@+id/tv_product_description"
        Android:layout_width="wrap_content"
        Android:layout_height="wrap_content"
        Android:layout_marginLeft="9dp"
        Android:layout_marginStart="9dp"
        Android:ellipsize="end"
        Android:maxLines="2"
        Android:text="@{historyItem.productDescription}"
        app:layout_constraintLeft_toRightOf="@+id/iv_product_image"
        app:layout_constraintTop_toBottomOf="@+id/tv_product_id"/>

</Android.support.constraint.ConstraintLayout>

Here you can see the textview being cut off.

9
Esteban

同様に正しい制約を追加してください

app:layout_constraintRight_toRightOf="parent"

幅0dpを次のように設定してください

Android:layout_width="0dp"

出力

enter image description here

22
Dharmbir Singh

このトピックに関する最良かつ最新の回答は、次の場所にあります。

ビューはConstraintLayoutの制約からプッシュされます

ConstraintLayout内のWrap_contentビューは画面の外側に広がります

ConstraintLayout1.1で導入されたapp:layout_constrainedWidth-プロパティの使用方法について説明します。

0
Lucas93

私にとって、これは次のことによって機能しました

app:layout_constraintEnd_toEndOf="parent"

と幅として

Android:layout_width="0dp"
0
Nixon Kosgei