Специальные символы Unicode для Android

В настоящее время я разрабатываю приложение, которое отображает специальные символы Юникода (например, ).

Теперь я столкнулся с тем, что на старых устройствах эти символы не могут отображаться. Как я могу узнать, работает ли он на текущем устройстве или нет?

  1. Нужно ли мне создавать виртуальное Android-устройство для каждой версии SDK и тестирования?
  2. Можно ли связать текущий шрифт Roboto Font с моим apk и доставить его на старые устройства, чтобы символы отображались?
2
0
182
1

Ответы 1

если вы поместите свой собственный шрифт в папку с ресурсами и укажите адрес при использовании, у вас не будет проблем

  1. поместите ваш Roboto.ttf в папку Assests

  2. Создал запись в strings.xml для каждого значка. Например, для "Yi Syllable Bby":

    <string name = "icon_note">&#41076;</string>
    
  3. Ссылка на указанную запись в моем макете xml:

     <Button
         android:id = "@+id/like"
         style = "?android:attr/buttonStyleSmall"
         ...
         android:text = "@string/icon_note" />  
    

Загрузил шрифт в мой метод onCreate и установил его для соответствующих представлений:

Typeface font = Typeface.createFromAsset( getAssets(), "Roboto.ttf" );
...
Button button = (Button)findViewById( R.id.like );
button.setTypeface(font);

здесь можно использовать icon lib в качестве проверки шрифта Как использовать значки и символы из «Font Awesome» в собственном приложении для Android

Другие вопросы по теме