Vous pourriez le faire comme ceci. Créer un textview personnalisé et l'utiliser partout un
public class MyTextView extends android.widget.TextView
{
public MyTextView(Context context)
{
this(context, null);
}
public MyTextView(Context context, AttributeSet attrs)
{
this(context, attrs, 0);
}
public MyTextView(Context context, AttributeSet attrs, int defStyle)
{
super(context, attrs);
if (this.isInEditMode()) return ;
final TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.SomeStyle);
final String customFont = a.getString(R.styleable.SomeStyle_font);
//Build a custom typeface-cache here!
this.setTypeface(
Typeface.createFromAsset(context.getAssets(), customFont)
);
}
}
Ajouter à ce attrs.xml
<declare-styleable name="SomeStyle">
<attr name="font" format="string" />
</declare-styleable>
Ensuite, dans votre thème, faites ceci: Cela fera en sorte tous les textviews utiliseront le style MyTextView
<item name="android:textViewStyle">@style/MyTextView</item>
Et maintenant, nous pouvons définir votre police personnalisée en utilisant votre attribut personnalisé dans ce style.
<style name="MyTextView" parent="@android:style/Widget.TextView">
<item name="font">MyPathToFontInAssets.ttf</item>
</style>
Ainsi, lorsque vous utilisez MyTextView dans le projet, il aura votre police personnalisée. IMPORTANT: IMPORTANT: Les polices de caractères ne sont pas mises en mémoire cache. Par conséquent, si vous envisagez d'utiliser ce code, vous devez également créer un cache de polices personnalisé afin que vous puissiez réutiliser la police de caractères personnalisée pour toutes les textviews. Cela accélérera considérablement l'application!
MISE À JOUR: Comme Amir a dit, ce qui est presque le même que Custom fonts and XML layouts (Android) mais je l'utilise aussi le style android utiliser automatiquement sur tous textviews dans l'application.
Juste parce qu'il est marqué en double, on ne peut pas fournir une meilleure réponse: Utilisez la bibliothèque de calligraphie pour y parvenir. Il change même la police des toasts. – suku
Vérifiez ce tut http://www.gadgetsaint.com/android/custom-fonts-textview-edittext-android/#.WNive2996Hs – ASP
ne vous utilisez pas juste https://github.com/chrisjenx/Calligraphy – Fattie