2009-11-09 8 views
10

J'ai un TextView. Je veux qu'elle ellipse si elle est plus longue que sa largeur disponible. Cela ne fonctionne pas, sauf si la chaîne d'entrée n'a pas d'espaces ... quelqu'un peut-il donner un exemple de ce travail? J'ai essayé différentes combinaisons de:Impossible d'obtenir des points de suspension pour fonctionner sur Android

SingleLine = "true" maxLines = "1" scrollHorizontally = "false"

aucun de ceux-ci ont un effet. Encore une fois, si je fournis une chaîne qui ne contient aucun espace, l'ellipse apparaît correctement. Qu'est-ce que je rate? J'ai essayé ceci sur 1.5, 1.6, 2.0, tout le même problème.

Merci

+0

Une solution rapide et hacky pourrait être d'afficher votre chaîne en utilisant des espaces insécables à la place des espaces réguliers. –

Répondre

12

Ellipsize est concassées (aller vote on the bug report, d'autant plus qu'ils prétendent ce n'est pas reproductible) donc vous devez utiliser un hack mineur. Utilisation:

android:inputType="text" 
android:maxLines="1" 

sur tout ce que vous voulez ellipsize. En outre, n'utilisez pas singleLine, il est obsolète depuis la version 1.5.

+0

Est-ce que [vote sur le rapport de bogue] était supposé être un lien? –

+0

Je l'ai réparé ... :) –

+0

Merci pour ce lien. Cela fonctionne avec le commentaire # 9. – bgs

2

Essayez avec:

textView.setSingleLine(); 
TruncateAt truncate = TruncateAt.END; 
textView.setEllipsize(truncate); 
11

ce fut la seule combinaison que je pouvais aller travailler sur SDK ver4:

android:ellipsize="end" 
android:singleLine="true" 

(Oui, je sais qu'il dit qu'il dépréciée mais je suis parti sans un choix)

+1

C'est le seul combo qui a fonctionné pour moi aussi –

0

Solution simple.

int limit = 9; 
if (str.length() > limit) { 
    textView.setText(str.substring(0, limit)+"..."); 
} else { 
    textView.setText(str); 
} 
+1

Aucune combinaison des propriétés xml n'a fonctionné pour moi. Pour gagner du temps et savoir 100% ce que je vais obtenir sur n'importe quel OS je suis allé avec ça. Merci. –

+0

Cela résume l'expérience de développement Android en général – menawi

Questions connexes