Si par « une police spécifique », vous voulez dire celui que vous bundle avec votre application, utilisez setTypeface()
sur le TextView
pour l'associer à un objet que vous créez Typeface
pointant vers votre police:
TextView tv=(TextView)findViewById(R.id.custom);
Typeface face=Typeface.createFromAsset(getAssets(),
"fonts/HandmadeTypewriter.ttf");
tv.setTypeface(face);
File font=new File(Environment.getExternalStorageDirectory(),
"MgOpenCosmeticaBold.ttf");
if (font.exists()) {
tv=(TextView)findViewById(R.id.file);
face=Typeface.createFromFile(font);
tv.setTypeface(face);
}
else {
findViewById(R.id.filerow).setVisibility(View.GONE);
}
(de this sample project)
N'utilisez que des polices correctement sous licence et gardez à l'esprit que la police doit avoir suffisamment de glyphes pour couvrir toutes les langues que vous avez l'intention de prendre en charge.
Merci Peut-être que je me trompe, mais ne devrais-je pas le faire pour CHAQUE textview dans mon application? N'y a-t-il pas un moyen de définir les polices de manière statique pour qu'elles fonctionnent dans toute l'application? – laylakn
@laylakn: "ne devrais-je pas le faire pour CHAQUE textview dans mon application?" -- Oui. "n'existe-t-il pas un moyen de définir de façon statique les polices pour qu'elles fonctionnent dans toute l'application?" - Pas à partir d'un fichier de police que vous expédiez avec l'application. Vous pouvez utiliser des styles pour définir une police à utiliser sur l'ensemble du tableau, mais il doit s'agir de l'une des trois polices intégrées (sans, serif, mono). – CommonsWare