web-dev-qa-db-fra.com

Définir la largeur de TextView en termes de caractères

Vraiment à la recherche d'un réponse à cette question .

Vous souhaitez définir la largeur d'une TextView en fonction d'un nombre ou de caractères. Donc, si je veux qu'il ait toujours 3 caractères de large, je pourrais le définir et il s'ajustera en fonction du paramètre textSize. Sans cela, je dois définir une largeur à 50dip ou quelque chose, qui peut ou non être correct en fonction de la taille de la police.

80
Fraggle

Répondre à ma propre question ...

Et le gagnant est: définissez l'attribut minEms (Android:minEms) !!!

Donc " ems " il se réfère à la taille du caractère le plus large, généralement un "M", vous avez compris? Ainsi, la définition de minEms sur une valeur entière, disons 3, sur un EditText ou un TextView devrait garantir une largeur d'au moins 3 caractères. Vous pouvez également définir les maxEms.

Donc, la réponse de Kyle sur ce sujet, bien que fausse, m'a fait trouver la réponse, alors merci Kyle.

158
Fraggle

Essayez d'utiliser: Android:maxLength="3"

Cela limitera votre texte à un nombre spécifique de caractères.

0
KyleM

La plupart des polices ne définissent pas toutes les largeurs de caractères comme identiques. Courier est peut-être l'exception la plus utilisée, mais regardez généralement la différence entre un i et un A, par exemple. Cela rend votre demande un peu problématique.

0
mah