2
votes

Comportement inattendu Android TextView Gravity BOTTOM

Mon projet Android actuel doit afficher plusieurs lignes de texte (maximum de 3) dans un TextView et placer le texte au bas de la vue de texte.

Mon TextView est défini comme suit: -

"`Artificial cells, nanom`"

Lorsque le texte à afficher est de 3 lignes ou moins, le texte s'affiche comme prévu.

Cependant, lorsqu'il est plus long que 3 lignes le début du texte est tronqué.

Par exemple

" Cellules artificielles, nanomédecine et biotechnologie "

s'affiche comme

"`cine, and biotechnology`"

ce dont j'ai besoin est qu'il s'affiche sous la forme

<TextView
    android:id="@+id/my_title"
    android:layout_width="@dimen/image_width"
    android:layout_height="@dimen/image_height"
    android:layout_alignTop="@+id/other_title"
    android:layout_marginTop="@dimen/span_eight"
    android:layout_toEndOf="@+id/dot"
    android:maxLines="3"
    android:gravity="bottom"
    android:padding="2dp"
    android:textColor="@android:color/white"
    android:textSize="@dimen/text_twelve" />

Comment obtenir le résultat souhaité? p>


2 commentaires

Quelle mise en page utilisez-vous?


@DheerajRijhwani J'emploie un RelativeLayout


3 Réponses :


2
votes

Essayez;

android:gravity="bottom"

Au lieu de

android:gravity="bottom|start"


2 commentaires

android: gravity = "bottom | start" ne fait aucune différence par rapport au texte affiché. Ce qui résout le problème "presque" utilise android: gravity = "bottom" & android: ellipsize = "end", mais je ne veux pas avoir de points de suspension


Vous pouvez essayer d'utiliser une bibliothèque externe si cela fonctionne; github.com/grantland/android-autofittextview



1
votes

Use:

android:ellipsize="end"

Ajoutez cette propriété à votre TextView , vous verrez le texte du début et à la fin de la troisième ligne, 3 points (...) être là pour indiquer que le texte comporte plus de 3 lignes.


0 commentaires

0
votes

Utiliser :

android:gravity="start"

la valeur inférieure de la gravité changera le comportement d'affichage. Vous faites varier la hauteur de TextView avec une marge.


0 commentaires