2010-11-29 12 views

Répondre

1
  1. Obtenez la largeur du champ d'édition. (int retourné) (par exemple 320 px)

  2. Obtenez la largeur de la police de votre texte actuel. Font class have getAdvance() method that accepts the string parameter (int retourné) (par exemple 650 px)

  3. if string width > edit field width Vous pouvez diviser la largeur de chaîne et modifier la largeur et, à l'autre étape, obtenir le modulo de celle-ci. (Ici, vous obtenez 2 en tant que division et 10 sera année modulo. Cela signifie que vous avez rempli deux lignes + en troisième ligne que vous rencontrez des personnages qui peuvent être en forme en 10 px.

J'espère qu'il résoudra votre problème, mais attention si vous utilisez des mots longs, le module n'a jamais été testé avec de longs mots mais je crains pour la précision du résultat avec des mots longs

+0

PS Je voudrais avoir un retour à ce sujet – Prasham

+0

Merci d'avance Mais le EditField va mettre un mot à la nouvelle ligne, donc la ligne actuelle a plus d'espace.Ce problème ne peut pas être résolu par votre solution.Vous avez d'autres solutions? – Mojiiz

+0

Je l'ai mentionné à ce sujet, s'il y a de grands mots à la fin de la li Comme si '' abbreviated' le champ d'édition lui-même met ceci dans une nouvelle ligne et nous faisons face à une erreur '(longueur non appropriée)', j'ai utilisé ce module mais nous n'avons jamais permis à l'utilisateur d'entrer plus de 5 caractères. Il n'y avait donc pas de risque de rencontrer cette erreur. Mais vous pouvez l'implémenter et trouver une solution de rechange ... Bonne chance .. et désolé pour un long commentaire – Prasham