Как я могу использовать турецкие символы, такие как «ş ç ı ö» в Android TextView? - PullRequest
1 голос
/ 30 января 2012

Я хочу написать «Иле» в Android TextView, но он не отображается правильно.Как можно использовать такие символы?

Например, я установил текстовое представление как 'çile', вместо этого оно отображается как '? Ile';как я могу это исправить?

Ответы [ 3 ]

3 голосов
/ 31 января 2012

Это для меня крики: проблема кодировки символов.Многие программы (например, браузеры, клиенты баз данных) надежно обрабатывают неожиданные байты, заменяя их знаками вопроса.Но турецкие символы поддерживаются "UTF-8", кодировкой Android по умолчанию.

http://developer.android.com/reference/java/nio/charset/Charset.html#defaultCharset%28%29

Вы можете начать с проверки того, что ваша кодировка действительно установлена ​​в UTF-8/16 или ISO-8859-9 (турецкий).Если это не проблема, это может быть сам шрифт.

Если это все еще не решит проблему, я бы опубликовал небольшой пример кода, который вы используете для отображения текста.От файла до базы данных, от соединения с базой данных до веб-браузера, есть много мест, где может произойти преобразование.

3 голосов
/ 30 января 2012

Попробуйте следующее и посмотрите, поможет ли это ( source ):

String description = "Turkish characters here";
TextView tv = (TextView) findViewById(R.id.description); 
tv.setText(Html.fromHtml(description).toString());
1 голос
/ 01 мая 2012

Этот ответ решил мои проблемы с турецкими персонажами.

https://stackoverflow.com/a/9312031/218198

...