Как использовать библиотеку каллиграфии в Android

Я хочу использовать библиотеку каллиграфии в моем проекте, но в моем приложении используется этот код для изменения языка карты Google:

@Override
protected void attachBaseContext(Context newBase) {
}

для использования каллиграфии я должен использовать этот код:

@Override
protected void attachBaseContext(Context newBase) {
    super.attachBaseContext(CalligraphyContextWrapper.wrap(newBase));
}

Как я могу использовать два attachBaseContext в моем проекте?

1 ответ

Решение

На самом деле это довольно просто, просто цепочка это:

@Override
protected void attachBaseContext(Context newBase) {
    newBase = MyContextWrapper.wrap(newBase, "fa_IR");
    super.attachBaseContext(CalligraphyContextWrapper.wrap(newBase));
}

Или вы можете извлечь родителя BaseActivity и применять каллиграфию ко всем своим действиям в одном месте. И переопределять язык только в активности карты. В этом случае он будет выглядеть как ваш оригинальный код, так как каждая оболочка будет применяться в своем классе.

Другие вопросы по тегам