web-dev-qa-db-fra.com

Aligner des éléments dans cardview

Je veux que ma carte ressemble à ceci

 enter image description here

J'ai gardé ma mise en page comme ça

    <Android.support.v7.widget.CardView
        Android:layout_gravity="center"
        Android:layout_width="fill_parent"
        Android:layout_height="wrap_content"
        card_view:cardCornerRadius="2dp"
        >

        <LinearLayout
            Android:layout_width="match_parent"
            Android:layout_height="wrap_content"
            Android:orientation="vertical">

        <LinearLayout
            Android:layout_width="match_parent"
            Android:layout_height="wrap_content"
            Android:orientation="horizontal">
        <TextView
            Android:layout_width="match_parent"
            Android:layout_height="wrap_content"
            Android:text="Order# GAMH2103"
            Android:layout_marginStart="5dp"
            Android:layout_marginLeft="5dp"
            Android:gravity="start"
            Android:textSize="15dp"/>

            <TextView
                Android:layout_width="match_parent"
                Android:layout_height="wrap_content"
                Android:text="Confirmed"
                Android:drawableRight="@drawable/check"
                Android:textColor="#00FF00"
                Android:gravity="end"
                Android:textSize="15dp"/>

        </LinearLayout>
            <View
                Android:layout_width="match_parent"
                Android:layout_height="1dp"
                Android:background="@Android:color/darker_gray"
                Android:layout_marginTop="5dp"
                />

        </LinearLayout>

D'une manière ou d'une autre, je ne parviens pas à afficher le TextView "confirmé". Je peux voir le numéro de commande cependant.

J'ai joué avec les variables gravity et layout_gravity mais je n'ai pas réussi à passer à travers.

S'il vous plaît aider.

Merci Lakshman.

5
Lakshman Pilaka

Utilisez la disposition suivante. Cela fonctionnera pour vous.

Il est toujours préférable d'utiliser la disposition relative au lieu de la disposition linéaire pour un meilleur alignement de la vue.

<Android.support.v7.widget.CardView
    Android:layout_gravity="center"
    Android:layout_width="fill_parent"
    Android:layout_height="wrap_content"
    card_view:cardCornerRadius="2dp">

    <RelativeLayout
        Android:layout_width="match_parent"
        Android:layout_height="wrap_content">

        <TextView
            Android:layout_width="match_parent"
            Android:layout_height="wrap_content"
            Android:text="Order# GAMH2103"
            Android:layout_marginStart="5dp"
            Android:layout_marginLeft="5dp"
            Android:gravity="start"
            Android:textSize="15dp"/>

        <TextView
            Android:layout_width="match_parent"
            Android:layout_height="wrap_content"
            Android:text="Confirmed"
            Android:textColor="#00FF00"
            Android:gravity="end"
            Android:textSize="15dp"/>


    </RelativeLayout>

    </Android.support.v7.widget.CardView>
6
Samarth Kejriwal

Une mise en page relative simple devrait faire le travail.

<RelativeLayout
        Android:layout_width="match_parent"
        Android:layout_height="wrap_content">
    <TextView
        Android:layout_width="match_parent"
        Android:layout_height="wrap_content"
        Android:text="Order# GAMH2103"
        Android:layout_marginStart="5dp"
        Android:layout_marginLeft="5dp"
        Android:gravity="start"
        Android:textSize="15dp"/>

    <TextView
        Android:layout_width="wrap_content"
        Android:layout_height="wrap_content"
        Android:text="Confirmed"
        Android:drawableRight="@drawable/check"
        Android:textColor="#00FF00"
        Android:layout_gravity="end"
        Android:textSize="15dp"/>

</RelativeLayout>

Notez la différence entre gravity et layout_gravity. Si vous utilisez gravity dans une TextView, cela concerne la position du texte dans la zone invisible qui est la bordure de TextView. Par exemple, layout_gravity se rapporte à la position de la vue à l'intérieur du parent.

0
hehe