J'essaie d'utiliser une police personnalisée, et j'ai lu ce que je suppose de placer les polices dans des éléments/polices. J'utilise Android Studio et il ne semble pas que je dispose d'un dossier d'actifs. Alors j'en ai créé un. Mais mon application se bloque lorsque je place le dossier des ressources dans src/main. J'utilise ce code pour charger mes polices.
Typeface fontRegular = Typeface.createFromAsset(getAssets(), "fonts/DroidSans.ttf");
Typeface fontBold = Typeface.createFromAsset(getAssets(), "fonts/DroidSans-Bold.ttf");
myDeviceModelTxt.setTypeface(fontRegular);
Qu'est-ce que je fais mal?
Je ne sais pas s'il y a eu des corrections de bugs depuis que cela a été demandé, mais j'utilise la structure actuelle pour un projet dans Android Studio 0.5.2:
root-module
|--.idea
|--app
|----build
|----src
|------main
|--------assets
|----------SomeFont.ttc
|----------AnotherFont.otf
|--------Java
|----------source code here
|--------res
|------AndroidManifest.xml
|----build.gradle
Et puis l'obtenir en appelant
Typeface.createFromAsset(mContext.getResources().getAssets(), "SomeFont.ttc");
Attention cependant, il existe un bogue ( https://code.google.com/p/Android/issues/detail?id=9904 ) qui empêche la récupération correcte des caractères. Utilisez un singleton!
Dossier Create Assets Cliquez avec le bouton droit de la souris sur l'application - >> nouvelle - >> dossier - >> AssetsFolder comme suit
Mettez votre police dans ce dossier en copiant et collant. et utilisez le code ci-dessous par exemple.
Typeface tf = Typeface.createFromAsset(getContext().getAssets(), "YourFontName.ttf");
setTypeface(tf);
Suivez simplement ce chemin:
File > New > folder > assets Folder
Ici, l'application doit être sélectionnée avant de créer un dossier.
Pour plus d'informations, voir cette réponse