2017-10-13 2 views
0

Typefaceを使用してアプリケーションのフォントをグローバルに変更していますが、他のすべてのアクティビティのフォントは変更されましたが、カードビューのテキストは変更されません。私のコードは次のとおりです。カードビューのフォントを変更できません

パブリッククラスReplaceFont {

public static void ReplaceDefaultFont(Context context, String OldFont, String Newfont){ 

    final Typeface typeface = Typeface.createFromAsset(context.getAssets(), "fonts/07722-cgothic.ttf"); 
    replaceFont(OldFont,typeface); 
} 

private static void replaceFont(String oldFont, Typeface typeface) { 
    try{ 

     final Field field = Typeface.class.getDeclaredField(oldFont); 
     field.setAccessible(true); 
     field.set(null,typeface); 
    } catch (NoSuchFieldException e) { 
     e.printStackTrace(); 
    } catch (IllegalAccessException e) { 
     e.printStackTrace(); 
    } 
} 

} と主な活動で:

Typeface typeface = Typeface.createFromAsset(getAssets(), "fonts/07722- 
cgothic.ttf"); 
+1

カスタムフォントを使用するカスタムTextViewを作成して、ビュー内でカスタムテキストビューを使用するだけでよいのはなぜですか? – Eenvincible

+0

しかし、私はアプリ全体のフォントをchnageしたいだけでなく、textviews –

+0

努力のためのthks私は私の問題を解決した –

答えて

0

あなたはこのhttps://github.com/chrisjenx/Calligraphy を使用することができます

それはあなたの中で変化することを試してみてください。アプリケーション

':書道:uk.co.chrisjenx 2.3.0' コンパイル

を、それはあなたを助けることが私の。

関連する問題