2010-07-30 43 views
7

Whoa SDK, whoa ...mettre fin au problème de l'ellipse avec TextViews

Je suis tenté d'ajouter une ellipse à la fin de mon TextView (une seule ligne) avant qu'elle ne ruisselle écran. J'ai lu que les ellipses sont cassées (développement pour 2.1)? Après la recherche sur Google, tout le monde semble suggérer de définir inputType sur text et maxLines sur 1 et vous obtiendrez une ellipse.

Il y a deux problèmes avec ceci: 1) Le texte sort de l'écran mais ne s'illumine pas. Je peux dire que le texte sort de l'écran parce que seulement la moitié d'un caractère est affiché sur le bord de l'écran, mais il n'imprime pas "..." à la place. 2) Quand j'ai un inputType défini sur mon TextView, cliquer sur ma liste ne fonctionne plus! Il n'y a pas de surlignage lorsque vous cliquez et le gestionnaire onListItemClick ne se déclenche pas!

Alors ...

Que puis-je faire ici?

Je voudrais noter qu'il y a deux façons d'ellipse. Si le mot entier ne tient pas sur l'écran, masquez le mot entier et ajoutez une ellipse. Ou, enlevez juste assez de caractères pour qu'une ellipse puisse tenir. Idéalement, ce dernier est ce que je veux.

Merci pour votre aide

+0

Je suis aussi traiter de cette question http://stackoverflow.com/questions/3769105/android-something-better-than-androidellipsizeend-to-add-to-truncated~~V~~3rd – OneWorld

Répondre

23

Si vous voulez ellipsize, il suffit d'utiliser Android: SingleLine = "true" ou android: ellipsize = "end".

+0

SingleLine est dépréciée, bien que – Andrew

+3

Ensuite, utilisez Android : ellipsize ... –

+2

Que ferais-je si je veux ellipsize un TextView avec plus d'une ligne? – Janusz