Dans le cadre de l'internationalisation d'une application Android, j'ai été confronté à la nécessité de mettre dynamiquement en forme les mots ou les traits d'union à la bonne position.
Toutes mes chaînes de caractères sont externalisées dans des fichiers strings.xml mais je n'ai trouvé aucune documentation sur la césure dans Android.
J'aimerais pouvoir suggérer des positions de césure, comme je peux le faire dans LaTeX :
http://en.wikipedia.org/wiki/Hyphenation_algorithm
Mais je n'ai pas trouvé d'indication si cela est possible. Y a-t-il quelque chose dans le cadre que j'ai manqué ? Que font les autres personnes, par exemple avec les chaînes de caractères japonaises qui n'ont pas de position évidente pour interrompre une phrase ? Ajoutez-vous simplement des espaces aux positions correctes ?
Je pourrais modifier dynamiquement la taille de la police pour l'adapter à certaines mises en page, mais cela ne fonctionne pas pour les messages plus longs qui s'étendent sur plusieurs lignes. Que faire ?
2 votes
Android respecte-t-il le caractère soft-hyphen ? (U+00AD)
0 votes
J'ai eu des problèmes similaires avec le coréen et d'autres langues où les mots isolés sont énormes. Je suis donc intéressé par une réponse. Une question pourrait être : est-il acceptable de briser le mot en premier lieu ?
0 votes
@anon oui, un caractère de trait d'union doux pourrait être intéressant. Je vais vérifier cela.
0 votes
Je ne m'y connais pas assez en japonais ou en coréen, mais il serait certainement bizarre de briser le mot en premier lieu dans d'autres langues, mais il serait bon de le savoir.
0 votes
Le latex a fourni un moyen de suggérer comment séparer les mots. Je ne me souviens pas vraiment du nom, mais je chercherais comment le faire dans Latex et vérifierais si cela fonctionne sur Android.
0 votes
Cela ne fonctionne pas. Peut-être que le tiret doux fonctionne. Je dois encore essayer.
0 votes
@Manfred Moser : un succès avec le tiret doux ?
0 votes
Non, je n'ai pas eu de chance reproductible avec ça.
3 votes
Le tiret doux fonctionne sous Android 4.4, mais pas sous 4.2. J'aimerais savoir s'il fonctionne en 4.3, c'est ce que j'espérais découvrir sur cette page.
0 votes
@arnt Voir mon réponse . Android 4.3 semble le supporter au moins sur les appareils SAMSUNG.
3 votes
SDK 17 : ni l'un ni l'autre \u00AD ni \u200B travail. SDK 19 : \u200B casse un mot sans caractère de trait d'union. SDK 24 - \u00AD la césure correcte, \u200B casse un mot sans caractère de trait d'union.
0 votes
Est-ce que ­ ; de html fonctionnera sur Android ?