Je souhaite savoir comment utiliser une police externe dans Android Studio, car il n'existe pas de dossierAssets. J'ai cherché un touriste utile sur Internet, mais ils prétendent tous utiliser le dossier Assets.
J'ai créé moi-même un dossier d'actif dans src/main
mais Android Studio ne reconnaît pas getAssets()
.
Allez sur votre projet: app -> src -> main
Créez un dossier d'actifs comme celui-ci:
|assets
|-----------------fonts
|-------------------font.ttf
|Java
|res
AndroidManifest.xml
et ensuite utiliser
Typeface face=Typeface.createFromAsset(getAssets(),"fonts/digital.ttf");
txtV.setTypeface(face);
Si vous avez une police personnalisée, utilisez le code suivant:
TextView tv=(TextView)findViewById(R.id.custom);
Typeface face=Typeface.createFromAsset(getAssets(),"fonts/Verdana.ttf");
tv.setTypeface(face);
Placez également votre fichier de police dans le dossier assets/fonts et suivez le instructions d'ici.
NOTE: Vous devez créer vous-même un dossier d'actif.
Selon les développeurs Android: Android 8.0 (API niveau 26) introduit une nouvelle fonctionnalité, les polices en XML, qui vous permet d’utiliser les polices en tant que ressources. Vous pouvez ajouter le fichier de police dans le dossier res/font/pour regrouper les polices en tant que ressources. Ces polices sont compilées dans votre fichier R et sont automatiquement disponibles dans Android Studio. Vous pouvez accéder aux ressources de polices à l'aide d'un nouveau type de ressource, la police. Par exemple, pour accéder à une ressource de police, utilisez @ font/myfont ou R.font.myfont.
pour plus de détails: https://developer.Android.com/guide/topics/ui/look-and-feel/fonts-in-xml.html
si vous rencontrez une erreur avec la méthode "getAssets ()", vous pouvez utiliser la méthode suivante . dans le dossier assets met la famille de polices.
Typeface getFace=Typeface.create("OpenSans",3);
textView = (TexView) findViewById(R.id.textView);
textView.setTypeface(getFace);
Si vous avez essayé à la fois les dossiers res/asset/font et main/asset et que vous avez essayé différentes polices et que cela n'a pas fonctionné, il s'agit probablement d'un bogue d'Android Studio.
J'avais le même problème, mais je l'ai résolu en important ma police dans un éditeur de polices en ligne (recherchez l'éditeur de polices pentacom), en exportant la police et en l'enregistrant dans un nouveau fichier .tf. La police obtenue sera de résolution inférieure, mais cela a fonctionné pour moi.
Vous pouvez peut-être essayer d'autres éditeurs/exportateurs de polices en ligne.