2016-06-01 18 views
2

私は最近、ASCII-artsでRPGを作っています。モノスペースフォントとカスタムフォント(マシュマロ)

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に固定幅フォントを台無し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; 
    } 
} 

書体customFont = FontCache.getTypeface( "カスタムは font.ttfをダウンロード"、clContext)を試すことができます。

code snippet: 
Typeface customFont = FontCache.getTypeface("chyga.ttf", clContext); 
yourTextView.setTypeface(customFont); 
関連する問題