Mettre deux textviews côte à côte, dans une mise en page
J'ai deux textviews j'ai besoin de mettre côte à côte, dans une mise en page et j'ai respecter deux règles:
-
Textview2 doit toujours être affiché entièrement.
-
Textview1 doit être recadrée si il n'y a pas assez de place dans la mise en page.
Exemples:
Textview1|textview2
Teeeeeeeeeeeeeeeeeeeextview1...|textview2
Des idées?
Le seul moyen que j'ai trouvé qui pourrait fonctionner est de créer un drawable avec le texte de textview2 et de l'affecter comme coumpoundDrawable à textview1.
- ne textview1 besoin pour ajuster espace de la propagation de la textviews à prendre de la largeur de trop? dans le cas où les deux textviews sont petites pour remplir toute la largeur
- Post vous XML avec la sortie de sorte que nous pouvons modifier...
Vous devez vous connecter pour publier un commentaire.
Envelopper les deux TextViews dans un LinearLayout. Attribuer une mise en page de poids de 0 à textview2 et une mise en page de poids de 1 à textview2.
Voir ici pour plus d'infos: Linéaire De La Mise En Page De Poids
Si vous jouez avec l'exemple ci-dessous, vous verrez que le LinearLayout première alloue de l'espace pour textview2 (avec le poids de 0) et alloue ensuite ce qui reste à textview1 (avec le poids 1). Si l'espace est insuffisant pour accueillir à la fois TextViews, textview1 sera ellipsized premier. Dans l'exemple ci-dessous textview2 ne jamais devenir ellipsized si le LinearLayout est plus petite que la taille de textview2 lui-même. Affecter une largeur de présentation de la FrameLayout et voir ce qui se passe.
android:singleLine="true"
au lieu deandroid:maxLines="1"
en premierTextView
.pourquoi avez-vous besoin que drawable? option: vous pouvez utiliser textview1 avec une largeur fixe et ellipsize la fin..:
Edit:
De sortie à court textView1 texte:
De sortie pour les longues textView1 texte: