отображение специальных символов в приложении для Android из базы данных sqlite - PullRequest
3 голосов
/ 19 января 2011

У меня есть приложение Периодическая таблица элементов для Android, которое хранит большую часть своих данных в строковых массивах.Я сейчас пытаюсь использовать базу данных sqlite вместо массивов, но у меня небольшая проблема.Если я напишу 'android: text = "¹"' непосредственно в TextView, он будет отображать верхний индекс 1 (например, это>>), но если я сохраню '¹' как текст в базе данных sqlite, а затем использую курсор для заполнениятот же TextView, вместо того, чтобы отображался верхний индекс 1, я просто вижу «¹» в точности так, как набрал его.Как я могу заставить TextView отображать специальные символы при заполнении базой данных sqlite?Я боролся некоторое время, и я в тупике, поэтому любые предложения будут оценены.Спасибо!

1 Ответ

3 голосов
/ 19 января 2011

Используйте строковую нотацию Java Unicode для каждого специального символа при вставке их в базу данных.
Для «¹» это будет: \u00b9.

В качестве альтернативы, для анализа HTML-тегов и символьных сущностей, таких как ¹ в TextView, вы можете заключить строку в вызов в Html.fromHtml() перед вызовом setText().

...