web-dev-qa-db-fra.com

Changer la gravité de l'image pouvant être dessinée dans textview

J'ai ajouté l'image Drawable start dans un TextView. Le problème est que je ne peux pas contrôler la gravité de ce qui peut être dessiné dans TextView 

Ce que je dois réaliser  What i need to achieve

Ce que j'ai accompli jusqu'à présent 

 What i have achieved so far

C'est mon TextView 

        <TextView
            Android:id="@+id/tv_8_digit_check"
            Android:layout_width="0dp"
            Android:layout_height="wrap_content"
            Android:layout_weight="1"
            Android:drawablePadding="@dimen/dimen_4"
            Android:drawableStart="@drawable/ic_validate"
            Android:text="@string/at_least_8_characters_txt"
            Android:textColor="@color/white_trans"
            Android:textSize="12sp" />

Toute suggestion sur comment puis-je régler la gravité de ce dessin au sommet/début? Merci 

12
Usman Ghauri
  1. Essayez d'utiliser Android:gravity="top"

    si cela n'a pas fonctionné, utilisez une marge négative comme celle-ci  

  2. Android:drawablePadding="-20sp"

  3. Une autre solution consiste à prendre ImageView à côté de TextView à l'intérieur LinearLayout afin que vous puissiez appliquer la gravité

4
Manohar Reddy

Utilisez la case à cocher au lieu de textview Drawable, et ajoutez des éléments personnalisables à l'endroit où vous pouvez utiliser cette image

4
Jinal Patel
<LinearLayout
    Android:layout_width="wrap_content"
    Android:layout_height="wrap_content"
    Android:orientation="horizontal"
    Android:gravity="top">

    <ImageView
        Android:layout_width="wrap_content"
        Android:layout_height="wrap_content"
        Android:layout_marginRight="@dimen/dimen_4"
        Android:src="@drawable/ic_validate"/>
    <TextView
        Android:id="@+id/tv_8_digit_check"
        Android:layout_width="0dp"
        Android:layout_height="wrap_content"
        Android:layout_weight="1"
        Android:text="@string/at_least_8_characters_txt"
        Android:textColor="@color/white_trans"
        Android:textSize="12sp" />

</LinearLayout>
0
Davit Avetisyan

Je vous suggère de mettre image à imageview. Placez l'imageview et le textview dans un affichage linéaire et définissez la gravité sur top. Réduisez également la taille du texte et de l'image.

0
K. Sopheak