0

我确实使用uk.co.chrisjenx:calligraphy依赖项来使用资产文件夹中的字体,但是默认字体并未应用于我的应用程序。我遵循了其他 stackoverflow 问题中使用的指南,但它们不起作用,并且所有解决方案都使用了我在下面使用的相同语法。

这是我的应用程序,字体路径是正确的,因为它使用 XMLfontpath属性工作;

public class App extends MultiDexApplication {

    private static volatile Context instance;

    public static Context get() {
        return instance;
    }
    private static App enableMultiDex;
    public static Context context;

    public App(){
        enableMultiDex=this;
    }
    public static App getEnableMultiDexApp() {
        return enableMultiDex;
    }

    @Override
    public void onCreate() {
        super.onCreate();
        context = getApplicationContext();
        instance = getApplicationContext();
        Thread.setDefaultUncaughtExceptionHandler(new ExceptionHandler(this));
        CalligraphyConfig.initDefault(new CalligraphyConfig.Builder()
                .setDefaultFontPath("fonts/mobilefont.ttf")
                .setFontAttrId(R.attr.fontPath)
                .build());
    }

}
4

1 回答 1

4

包装活动上下文:

@Override
protected void attachBaseContext(Context newBase) {
    super.attachBaseContext(CalligraphyContextWrapper.wrap(newBase));
}
于 2018-03-12T14:53:58.460 回答