无法更改卡片视图的字体

时间:2017-10-13 20:51:41

标签: android

我正在使用Typeface全局更改我的应用程序的字体,但所有其他活动的字体已更改,但卡片视图中的文本未更改。我的代码是:

public class 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 个答案:

答案 0 :(得分:0)

请尝试

你可以使用这个https://github.com/chrisjenx/Calligraphy 它会在您的应用程序中发生变化

编译'uk.co.chrisjenx:书法:2.3.0'

我会帮助你。