je veux mon textview et imageview comme image mentionnée ci-dessus.
1.Je souhaite définir Textview et Imageview horizontalement sur une seule ligne à l'aide de la disposition par contrainte.
2.Textview n'arrive pas au centre (centre) de la vue Image (positions gauche et droite)
3.Par ailleurs, la gravité de la mise en page ne permet pas de faire textview center, en raison de la mise en page Cosntraint
4. Aidez-moi à y parvenir.
Merci d'avance.
<Android.support.v7.widget.CardView
Android:id="@+id/cv2"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:layout_gravity="center"
app:cardCornerRadius="4dp"
app:layout_constraintTop_toBottomOf="@+id/cv1">
<Android.support.constraint.ConstraintLayout
xmlns:app="http://schemas.Android.com/apk/res-auto"
Android:layout_width="match_parent"
Android:layout_height="wrap_content">
<TextView
Android:id="@+id/title1"
Android:layout_width="0dp"
Android:layout_height="wrap_content"
Android:paddingLeft="10dp"
Android:text="Hero"
Android:textColor="@color/colorPrimary"
Android:textSize="16dp"
Android:textStyle="bold"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toLeftOf="@+id/display_pic"
/>
<ImageView
Android:id="@+id/display_pic"
Android:layout_width="80dp"
Android:layout_height="80dp"
Android:layout_alignParentEnd="true"
Android:layout_margin="16dp"
Android:adjustViewBounds="false"
Android:scaleType="centerCrop"
app:layout_constraintLeft_toLeftOf="@+id/title1"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:srcCompat="@Android:color/holo_red_light" />
</Android.support.constraint.ConstraintLayout>
</Android.support.v7.widget.CardView>
Si vous voulez que ImageView
soit affiché à droite du parent, supprimez cet attribut:
app:layout_constraintLeft_toLeftOf="@+id/title1"
Et si vous souhaitez aligner verticalement la TextView
, ajoutez ces attributs:
app:layout_constraintTop_toTopOf="@id/display_pic"
app:layout_constraintBottom_toBottomOf="@id/display_pic"
Le xml avec les changements:
<?xml version="1.0" encoding="utf-8"?>
<Android.support.v7.widget.CardView
Android:id="@+id/cv2"
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="wrap_content"
Android:layout_gravity="center"
app:cardCornerRadius="4dp"
app:layout_constraintTop_toBottomOf="@+id/cv1">
<Android.support.constraint.ConstraintLayout
xmlns:app="http://schemas.Android.com/apk/res-auto"
Android:layout_width="match_parent"
Android:layout_height="wrap_content">
<TextView
Android:id="@+id/title1"
Android:layout_width="0dp"
Android:layout_height="wrap_content"
Android:paddingLeft="10dp"
Android:text="Hero"
Android:textColor="@color/colorPrimary"
Android:textSize="16dp"
Android:textStyle="bold"
app:layout_constraintTop_toTopOf="@id/display_pic"
app:layout_constraintBottom_toBottomOf="@id/display_pic"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toLeftOf="@+id/display_pic"/>
<ImageView
Android:id="@+id/display_pic"
Android:layout_width="80dp"
Android:layout_height="80dp"
Android:layout_alignParentEnd="true"
Android:adjustViewBounds="false"
Android:scaleType="centerCrop"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:srcCompat="@Android:color/holo_red_light"/>
</Android.support.constraint.ConstraintLayout>
</Android.support.v7.widget.CardView>
Résultat:
Je suppose que c'est celui que vous voulez! voir l'image et commenter
<?xml version="1.0" encoding="utf-8"?>
<Android.support.v7.widget.CardView
xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:app="http://schemas.Android.com/apk/res-auto"
xmlns:tools="http://schemas.Android.com/tools"
Android:layout_width="match_parent"
Android:layout_height="match_parent">
<Android.support.constraint.ConstraintLayout
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:padding="10dp">
<ImageView
Android:id="@+id/imageView2"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
app:layout_constraintBottom_toBottomOf="@+id/textView2"
app:layout_constraintEnd_toEndOf="@+id/textView2"
app:layout_constraintTop_toTopOf="@+id/textView2"
app:srcCompat="@drawable/ic_favorite_border_black_24dp"
tools:ignore="VectorDrawableCompat" />
<TextView
Android:id="@+id/textView2"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_marginStart="8dp"
Android:text="TextView"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toEndOf="@+id/imageView2"
app:layout_constraintTop_toTopOf="parent"
Android:layout_marginLeft="8dp" />
</Android.support.constraint.ConstraintLayout>
</Android.support.v7.widget.CardView>
<?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="match_parent"
Android:layout_height="match_parent">
<ImageView
Android:id="@+id/imageView2"
Android:layout_width="80dp"
Android:layout_height="80dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:srcCompat="@mipmap/ic_launcher" />
<TextView
Android:id="@+id/textView4"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="Hero"
Android:textColor="@color/colorPrimary"
Android:textSize="16dp"
Android:textStyle="bold"
app:layout_constraintBottom_toBottomOf="@+id/imageView2"
app:layout_constraintEnd_toEndOf="@+id/imageView2"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintStart_toStartOf="@+id/imageView2"
app:layout_constraintTop_toTopOf="@+id/imageView2" />
</Android.support.constraint.ConstraintLayout>
Avec le code ci-dessus, vous pouvez conserver textview au centre de la vue de l’image. Pour positionner la vue de l’image, ajustez le biais vertical et horizontal. J'espère que cela t'aides.