Android Replace "..." with ellipsis character

AndroidXmlEncodingAdt

Android Problem Overview


Since AVD tools 16 I'm getting this warning:

Replace "..." with ellipsis character (..., …) ?

in my strings.xml

at this line

 <string name="searching">Searching...</string>

How do I replace ...? Is it just literally &#8230;?

Could someone explain this encoding?

Android Solutions


Solution 1 - Android

&#8230; is the unicode for "" so just replace it. It's better to have it as one char/symbol than three dots.

Solution 2 - Android

To make thing short just put &#x2026; in place ...

[Link to XML character Entities List][1]

[1]: http://en.wikipedia.org/wiki/List_of_XML_and_HTML_character_entity_references "List_of_XML_and_HTML_character_entity_references"

  • Look at Unicode column of HTML for row named hellip

Solution 3 - Android

If you're using Eclipse then you can always do the following:

  • Right click on the warning
  • Select "Quick Fix" (shortcut is Ctrl + 1 by default)
  • Select "Replace with suggested characters"

This should replace your three dots with the proper Unicode character for ellipsis.

Just a note: The latest version of ADT (21.1) sometimes won't do the replace operation properly, but earlier versions had no problem doing this.

This is the character:

Solution 4 - Android

The solution to your problem is:

Go to Window -> Preferences -> Android -> Lint Error Checking

And search for "ellipsis". Change the warning level to "Info" or "Ignore".

Solution 5 - Android

This answer is indirectly related to this question:

In my case textView1.setTextView("done&#8230"); was showing some box/chinese character. Later, I checked into fileformat.info for what the value represents and I found this is a Han character. So, what to do? I searched for "fileformat.info ellipse character" and then everything became clear to me once I saw its values are;

UTF-16 (hex) 0x2026 (2026)

UTF-16 (decimal) 8,230

So, you have several encoding available to represent a character (e.g. 10 in Decimal is represented as A in hexa) so it is very important to know when you are writing an unicode character, how receiving function decodes it. If it decodes as decimal value then you have to provide decimal value, if it accept hexadecimal then you have to provide hexadecimal.

In my case, setTextView() function accepts decimal encoded value but I was providing hexadecimal values so I was getting wrong character.

Solution 6 - Android

The quick fix shortcut in Android Studio is Alt + Enter by default.

Solution 7 - Android

Best not to ignore it as suggested by some, it seems to me. Use Android Studio to correct it (rather than actually typing in the character code), and the tool will replace the three dots with the three-dot unicode character. Won't be confusing to translators etc.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionBlundellView Question on Stackoverflow
Solution 1 - AndroidWarrenFaithView Answer on Stackoverflow
Solution 2 - AndroidJadeyeView Answer on Stackoverflow
Solution 3 - AndroidMichael CeleyView Answer on Stackoverflow
Solution 4 - AndroidFlorian FischerView Answer on Stackoverflow
Solution 5 - AndroidseoulView Answer on Stackoverflow
Solution 6 - AndroidHasan El-HefnawyView Answer on Stackoverflow
Solution 7 - AndroidKofiView Answer on Stackoverflow