Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Hyphenation in Android

As part of internationalizing an Android application I have come across the need to dynamically word wrap or hyphenate at the right position.

All my strings are externalized in strings.xml files but I have not found any documentation about hyphenation in Android.

I would like to be able to suggest hyphenation positions similar to how I can do it in LaTeX:

http://en.wikipedia.org/wiki/Hyphenation_algorithm

But I have not found any indication if this is possible. Is there anything in the framework I have missed? What are other people doing e.g. with Japanese strings that have no obvious position to break up a sentence? Do you just add spaces at the correct positions?

I could dynamically size the font to fit into certain layouts but for longer messages that go across multiple lines that won't work. What to do?

like image 625
Manfred Moser Avatar asked Dec 15 '10 21:12

Manfred Moser


People also ask

How do you turn on hyphenation?

Enable automatic hyphenation in Word Click on Layout or Page Layout, depending on your version of Word. In the Page Setup area, select“Hyphenation”. Set a check mark next to “Automatic”.

Where is the hyphenation button?

On the Layout tab, click the arrow next to Hyphenation . Select Hyphenation Options. In the Limit consecutive hyphens box, type the maximum number, and then click OK.

What is the hyphenation function?

The hyphen ‐ is a punctuation mark used to join words and to separate syllables of a single word. The use of hyphens is called hyphenation.


1 Answers

Its a new thing from Android 6 Marshmellow.

Try adding this to your TextView xml

android:hyphenationFrequency="none" 
like image 124
Athul Avatar answered Oct 03 '22 14:10

Athul