ich einige JSON-Daten mit einem formatierten String von Währung wie diese jedochAndroid: Russische Rubel Währung nicht auf bestimmten Telefon angezeigt?
₽35
bekommen, bemerkte ich, dass auf einem Nexus 5 (Lollipop) es es richtig angezeigt wird, aber andere Handys wie das HTC ein Mini und Samsung GT-I9505, es zeigt ein Leerzeichen an.
ich versuchte, das Problem zu erforschen, ich keine andere Lösung als in der XML-Layout-Datei finden konnte, stellen Sie sicher, dass diese Linie
<?xml version="1.0" encoding="utf-8"?>
vorhanden ist, aber ich habe noch das gleiche Problem
Bitte helfen
bearbeiten 15. Mai 2015
Laden benutzerdefinierte Schriftart NotoSans (Bitte beachten Sie, ich weiß, das ist Leck-Speicher würde, aber es ist nur einen kurzen Test)
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TextView ruble = (TextView)findViewById(R.id.ruble);
Typeface myFont = Typeface.createFromAsset(getAssets(),"fonts/NotoSans-Regular.ttf");
ruble.setTypeface(myFont);
}
Der russische Rubel Symbol in strings.xml definiert (man beachte ich alles versucht)
<string name="rubleSymbolJava">\u20BD</string>
<string name="rubleSymbolHTML">₽</string>
<string name="rubleSymbolHTMLHex">₽</string>
Das gleiche Problem, auf älteren Handys als Quadrat gezeigt, aber funktioniert auf Android 5.0 ABER nichts älter.
GELöST Bitte beachten Sie meine Antwort
Die copy/paste Sie haben sehen können In die Frage scheint Ihr Währungssymbol versagt zu haben. Leastways, es erscheint nicht als [das russische Rubelzeichen] (http://unicode-table.com/en/20BD/). Es ist möglich, dass die Schriftart, die auf diesen Geräten verwendet wird, dieses Unicode-Zeichen nicht enthält. – CommonsWare
@DerGolem Ich verwende die Standardschriftart. Keine Gewohnheit. Es ist nur ein Standard-Button. –
@DerGolem Ich habe gerade einen Test gemacht. Ich habe eine benutzerdefinierte Schriftart Roboto-Light.ttf verwendet, die nicht diese Glyphe hat, aber dennoch zeigt es auf Nexus 5 nur –