Специальные символы в TextView

Я хочу показать символ "♫" в Android TextView, но вместо этого он показывает [].

Это мой код:

txtCatname.setText("♫");

Как я могу правильно отобразить этот символ?

Ответ 1

Вы можете использовать код Unicode: http://unicode-table.com/en/.

Например:

txtCatname.setText("\u266b");

или, альтернативно, используйте знаковый шрифт, например, шрифт awesome:
http://fortawesome.github.io/Font-Awesome/

Используйте эту альтернативу (или любой другой знаковый шрифт, который вам нравится), если этот символ не поддерживается (не все символы Unicode поддерживаются).

Ответ 2

Попробуйте следующее:

String str = "♫";
byte spbyte[] = str.getBytes("UTF-8"); 
str = new String( spbyte,"UTF-8");
txtCatname.setText(str);

Если это не сработает, попробуйте следующее:

String str = "♫";
txtCatname.setText(Html.fromHtml(str));

Ответ 4

Это обычное явление, когда исходный файл кодируется как ANSI. Преобразование исходного файла как UTF-8 (без спецификации), скорее всего, решит проблему.

Ответ 5

Это кажется довольно простым:

  • Просто зайдите в список Unicode и выберите Unicode и скопируйте его.

  • Перейдите в strings.xml и вставьте его. enter image description here Это вставит символ юникода вместо кода и использует его в вашем xml как обычную строку.

Надеюсь, что это поможет вам.

Ответ 6

Просто добавьте символ в виде строки в ваш string.xml Добавляя двойные кавычки к специальному символу.