2016-06-01 5 views
2

Недавно я создал RPG с ASCII-arts и с Android 5.0, там искусство испортилось.Моноширинный шрифт и собственный шрифт (Marshmallow)

Я использую специальный шрифт для его отображения, определяется следующим образом:

Typeface face= Typeface.createFromAsset(getAssets(),"fonts/courier.ttf"); 
    etiqPlateau.setTypeface(face); 

Я использовал андроида: FontFamily = «моноширинный» настройки в XML, но это выглядит как начертание шрифта, определенного в Java коде переопределяет xml. Можно ли определить атрибуты шрифта в xml или, по крайней мере, определить использование моноширинного шрифта в 5.0+? Помогите!

In Android 4.4 (фото)

In Android 6.0 (фото)

EDIT - Даже когда я использую андроид: FontFamily на XML без настройки шрифта, Android 5.0+ портит моноширинный шрифт.

ответ

0

вы также можете попробовать этот

public static class FontCache { 

    private static HashMap<String, Typeface> fontCache = new HashMap<>(); 

    public static Typeface getTypeface(String fontname, Context context) { 
     Typeface typeface = fontCache.get(fontname); 

     if (typeface == null) { 
      try { 
       typeface = Typeface.createFromAsset(context.getAssets(), fontname); 
      } catch (Exception e) { 
       return null; 
      } 

      fontCache.put(fontname, typeface); 
     } 

     return typeface; 
    } 
} 

Typeface customFont = FontCache.getTypeface ("ваш заказ скачано font.ttf", clContext);

code snippet: 
Typeface customFont = FontCache.getTypeface("chyga.ttf", clContext); 
yourTextView.setTypeface(customFont); 
Смежные вопросы