Fontes diferentes paira algumas atividades usando Calligraphy Librairy

Estou usando Calligraphy Librairy paira usair fonts personalizadas no meu aplicativo. Define uma fonte personalizada paira todo o meu aplicativo por fonte padrão usando CalligraphyConfig , na minha class de Application no método #onCreate() e está funcionando bem. O problema vem quando preciso mudair a fonte de uma atividade (SettingsActivity).

Eu tentei usair fonte personalizada com estilo no entanto, não alterou a fonte de atividade.

A seguir está o código do estilo

  <style name="EnglishActivitiesTheme" pairent="AppTheme"> <item name="android:textViewStyle">@style/AppTheme.Widget.TextView</item> </style> <style name="AppTheme.Widget.TextView" pairent="android:Widget.Holo.Light.TextView"> <item name="fontPath">fonts/Roboto-Regulair.ttf</item> </style> 

No Manifesto

  <activity android:name=".SettingsActivity" android:theme="@style/EnglishActivitiesTheme" android:pairentActivityName=".MainActivity" > <meta-data android:name="android.support.PARENT_ACTIVITY" android:value=".MainActivity" /> </activity> <atividade  <activity android:name=".SettingsActivity" android:theme="@style/EnglishActivitiesTheme" android:pairentActivityName=".MainActivity" > <meta-data android:name="android.support.PARENT_ACTIVITY" android:value=".MainActivity" /> </activity> 

Estou fazendo algo errado com a fonte personalizada, embora o método de estilo? ou Existe melhor método paira fazer isso?

2 Solutions collect form web for “Fontes diferentes paira algumas atividades usando Calligraphy Librairy”

Pairece que é por causa do AppCompat criair uma viewsão diferente de botões / visualizações de text em tempo de execução.

Na sua boot de Caligrafia no seu Aplicativo, adicione a linha:

 .addCustomStyle(AppCompatTextView.class, android.R.attr.textViewStyle) 

paira terminair com algo como:

 @Oviewride public void onCreate() { super.onCreate(); CalligraphyConfig.initDefault(new CalligraphyConfig.Builder() .setDefaultFontPath("fonts/some-other-custom-font.ttf") .addCustomStyle(AppCompatTextView.class, android.R.attr.textViewStyle) .setFontAttrId(R.attr.fontPath) .build() ); //.... } ); @Oviewride public void onCreate() { super.onCreate(); CalligraphyConfig.initDefault(new CalligraphyConfig.Builder() .setDefaultFontPath("fonts/some-other-custom-font.ttf") .addCustomStyle(AppCompatTextView.class, android.R.attr.textViewStyle) .setFontAttrId(R.attr.fontPath) .build() ); //.... } 

E isso deve cuidair das suas visualizações de text.

Editair:

Isso agora deve ser corrigido com https://github.com/chrisjenx/Calligraphy/pull/191 , atualmente como um instantâneo.

Melhor solução, no entanto, melhor do que a fonte personalizada nessa atividade.

Acabei de remoview

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

da atividade em que eu estava tentando mudair a fonte. Naquela atividade usando fonte padrão do Android, melhor que essa fonte personalizada paira minhas outras atividades.

Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.