Android Replace "..." with ellipsis character
AndroidXmlEncodingAdtAndroid 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 …
?
Could someone explain this encoding?
Android Solutions
Solution 1 - Android
…
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 …
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…");
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.