Astuce Travailler avec des polices personnalisées dans Android O

Le premier aperçu du développeur pour Android O est ici!

Dans cette série, nous examinons certaines des nouvelles fonctionnalités de l'interface utilisateur avec lesquelles vous pouvez commencer à expérimenter aujourd'hui, via Android O Developer Preview..

Dans la première astuce, je vous ai montré comment configurer votre développement pour prendre en charge cette prévisualisation précoce et comment créer du texte qui s'adapte automatiquement à la configuration actuelle de l'écran. Dans cette astuce, nous allons voir comment Android O est sur le point de faire du travail avec des polices personnalisées une expérience sans tracas..

Ajout de polices personnalisées à votre projet

Avez-vous déjà voulu faire ressortir un texte en particulier? Ou peut-être êtes-vous convaincu qu'une police personnalisée serait le moyen idéal pour ajouter une personnalité supplémentaire à votre application?

L’utilisation de polices personnalisées présente de nombreux avantages, mais travailler avec celles-ci sous Android a traditionnellement été une expérience douloureuse, vous obligeant à utiliser une bibliothèque ou à créer un programme personnalisé. Vue

Heureusement, travailler avec des polices personnalisées dans Android est sur le point de devenir beaucoup plus facile, car les polices personnalisées sont définies pour devenir un type de ressource entièrement pris en charge dans Android O. Cela signifie que l'ajout d'une police personnalisée à votre application sera aussi simple que l'ajout de toute autre ressource. , tels que des images et du texte.

Pour suivre ce didacticiel, vous aurez besoin de fichiers de polices que vous pouvez ajouter au projet Android O créé dans la première partie..

Android O prend en charge les deux .otf (OpenType) et .ttf (TrueType) formats. Il existe de nombreux sites Web proposant gratuitement ce type de polices, alors passez quelques minutes à chercher sur Google jusqu'à trouver la police que vous aimez..

Étant donné que nous ne faisons qu'essayer les nouvelles fonctionnalités d'Android O, peu importe la police que vous utilisez, mais lorsque vous recherchez des polices à utiliser dans les versions de production de votre application, vous devriez toujours vérifier les termes et conditions de cette police. Le téléchargement gratuit d'une ressource ne signifie pas automatiquement qu'il n'y a pas de restrictions quant à son utilisation et sa redistribution, il est donc important de toujours vérifier les détails.!

Vous devez également prendre en compte l'objectif, le contenu et le public cible de votre application, car différentes polices transmettent des messages différents. Si vous concevez une application pour aider les internautes à remplir leur déclaration de revenus, votre public peut avoir du mal à prendre au sérieux les conseils financiers et juridiques de votre application si elle est livrée dans une police de caractères étrange et farfelue.!

Une fois que vous avez trouvé une police avec laquelle vous souhaitez travailler, téléchargez-la et décompressez-la. À ce stade, vous devez vérifier le nom de fichier de la police pour les caractères non valides, essentiellement tout ce qui n'est pas en minuscule a-z, 0-9 ou un trait de soulignement. Essayez d’inclure d’autres caractères et Android Studio génère une erreur dès que vous essayez de référencer cette ressource..  

Une fois que vous avez vos fichiers de polices, vous devez les stocker quelque part:

  • Faites un clic droit sur votre projet app / res dossier et sélectionnez Nouveau> répertoire de ressources Android.
  • Ouvrez le menu déroulant et sélectionnez Police de caractère.
  • Entrer Police de caractère comme le Nom de fichier.
  • Cliquez sur D'accord.
  • Glissez et déposez vos fichiers de polices dans votre nouveau res / font dossier.

Utilisation de vos polices personnalisées

Vous pouvez appliquer une police personnalisée à votre texte à l'aide du nouveau android: fontFamily Attribut XML:

Vous pouvez également ajouter des polices personnalisées à tous les styles que vous avez créés dans votre application:

Si vous souhaitez utiliser des polices personnalisées par programme, vous pouvez récupérer une police personnalisée à l'aide de la commande getFont (int) méthode, par exemple:

importer android.support.v7.app.AppCompatActivity; importer android.os.Bundle; importer android.widget.LinearLayout; importer android.widget.TextView; importer android.widget.LinearLayout.LayoutParams; importer android.graphics.Typeface; Classe publique MainActivity étend AppCompatActivity @Override protected void onCreate (Bundle savedInstanceState) super.onCreate (savedInstanceState); LinearLayout linearLayout = new LinearLayout (this); TextView ProgrammaticallyTextView = new TextView (this); ProgrammaticallyTextView.setText ("Ceci est du texte"); // Référence votre police personnalisée // Type de caractère: = getResources (). GetFont (R.font.doublefeature); ProgrammaticallyTextView.setTypeface (police de caractères); linearLayout.addView (ProgrammaticallyTextView); this.setContentView (linearLayout, new LinearLayout.LayoutParams (LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT)); 

Création d'une famille de polices

Parfois, vous pouvez décompresser un dossier de polices et découvrir plusieurs versions d'une même police, telles qu'une version en italique ou des polices de poids et d'épaisseur variables..

Si vous utilisez plusieurs versions de la même police, vous souhaiterez peut-être les regrouper dans une famille de polices. Une famille de polices est essentiellement un fichier XML dédié dans lequel vous définissez chaque version de la police, ainsi que ses attributs de style et d'épaisseur associés..

Pour créer une famille de polices:

  • Assurez-vous que vous avez ajouté tous les fichiers de polices à votre projet. res / font dossier.
  • Faites un clic droit sur votre projet res / font dossier, puis sélectionnez Nouveau> Fichier de ressources de police.
  • Donnez un nom à ce fichier, puis cliquez sur D'accord.
  • Ouvrez ce fichier XML et définissez toutes les versions de cette police, ainsi que leurs attributs de style et d'épaisseur, par exemple:
 http://schemas.android.com/apk/res/android ">    

Vous pouvez ensuite référencer n’importe laquelle des polices de cette famille en utilisant le android: fontFamily attribut. Par exemple:

android: fontFamily = "@ font / doublefeature_bold"

N'oubliez pas de tester!

Bien qu'il soit facile de se laisser emporter par les nouvelles fonctionnalités, n'allez pas trop loin avec des polices personnalisées! Il est plus facile de naviguer et de comprendre les interfaces utilisateur cohérentes. Si votre application change constamment de polices, vos utilisateurs risquent de porter plus d’attention à la façon dont votre texte regards, plutôt que ce que ça dit.

Si vous incluez des polices personnalisées dans votre projet, il est important de tester le rendu de cette police dans une large gamme de configurations d'écran, car votre priorité doit toujours être de vous assurer que votre texte est facile à lire..

Conclusion

Dans cette astuce, je vous ai montré comment créer un texte plus élégant et unique en ajoutant des polices personnalisées à vos projets. Dans le dernier billet de cette série, nous allons passer du texte aux images, car je vais vous montrer comment créer des icônes de lanceur adaptatives qui adaptent automatiquement leur forme au dispositif actuel..

En attendant, consultez certains de nos autres tutoriels sur le développement d'applications Android!