web-dev-qa-db-fra.com

Android directive de troncature de texte

Existe-t-il un ensemble de directives pour le Android comment le texte doit être tronqué dans les contrôles? Le texte en fondu, les points de suspension, les coupures au milieu, etc.?

enter image description here

7
Anna Rouben

Une vérification rapide de developer.Android.com montre que l'approche standard pour arrêter l'habillage du texte sur les lignes consiste à choisir votre deuxième option: afficher avec des ellipses.

Android:ellipsize= provoque l'ellipse des mots dans le texte qui sont plus longs que la vue large au lieu d'être cassés au milieu

Cependant ; étant donné que c'est UX.StackExchange et que ce n'est pas vraiment le lieu à venir pour les directives de codage, il y a quelques problèmes d'utilisation spécifiques à considérer lorsque vous pensez à tronquer votre texte de quelque manière que ce soit. Juste parce que vous impliquez techniquement pouvez implémenter des techniques pour montrer qu'il y a plus de texte, pas signifie que c'est la meilleure façon de faire les choses.

Par exemple; comme indiqué dans les Windows User Experience Interaction Guidelines :

Évitez le texte tronqué et les ellipses associées. Les utilisateurs ne devraient jamais avoir à interagir avec une fenêtre pour afficher son contenu typique - réserver le redimensionnement et le défilement pour un contenu inhabituellement volumineux.

(c'est moi qui souligne)

Oui, c'est Microsoft et la directive est pour Windows 7/Vista, mais le raisonnement est solide. N'oubliez pas non plus que les ellipses ont d'autres connotations, en particulier si vous allez les utiliser sur les options que vous montrez ci-dessus; ellipses sur le bouton.

Par exemple, cette image d'un bouton typique montre des ellipses:

enter image description here

Maintenant, dans ce cas, les ellipses ne signifient pas 'l'étiquette ne tient pas sur le bouton' cela signifie en fait 'cliquez sur ce bouton pour ouvrir un nouveau menu'.

Alors oui, vous pouvez continuer et utiliser les ellipses pour les options Android que vous avez ci-dessus comme Android répond à cette option, mais en réalité si vous trouvez que votre texte/libellés sont trop longs pour les contrôles sur lesquels ils sont utilisés, alors vous avez soit les mauvais contrôles ou votre texte est trop long. Ne cherchez pas de solutions pour chausse-pied votre contenu dans une mise en page, assurez-vous de concevoir la mise en page et étiquettes pour s'insérer correctement dans l'écran en premier lieu.

De plus, si vous êtes intéressé par la troncature elle-même, il existe également de bonnes réponses à cette question ux.se sur le type de troncature préférable: études ou expérience sur l'utilisation de texte décoloré pour indiquer plus de contenu?

6
JonW

final int actionBarTitle = getResources (). getSystem (). getIdentifier ("action_bar_title", "id", "Android");

final TextView title = (TextView) getWindow (). findViewById (actionBarTitle);

title.setEms (10);

title.setText (nom);

1
nainesh