Maison > Java > javaDidacticiel > Comment puis-je utiliser facilement des polices personnalisées dans mes mises en page XML Android ?

Comment puis-je utiliser facilement des polices personnalisées dans mes mises en page XML Android ?

DDD
Libérer: 2024-12-07 14:37:14
original
987 Les gens l'ont consulté

How Can I Easily Use Custom Fonts in My Android XML Layouts?

Polices personnalisées et mises en page XML dans Android

Créer des mises en page GUI personnalisées à l'aide de fichiers XML dans Android peut s'avérer difficile lorsqu'il s'agit de spécifier des polices personnalisées pour les widgets. Par défaut, les fichiers XML utilisent uniquement les polices installées par le système.

Traditionnellement, les développeurs modifiaient les polices manuellement à l'aide d'ID uniques ou parcouraient les widgets en Java, ce qui peut être lent et fastidieux. Cependant, il existe de meilleures solutions disponibles.

Une méthode consiste à étendre la classe TextView pour implémenter des polices personnalisées :

public class TextViewPlus extends TextView {

    // ...

    public boolean setCustomFont(Context ctx, String asset) {
        // Attempt to create Typeface from the specified asset
        Typeface tf = Typeface.createFromAsset(ctx.getAssets(), asset);

        // Set the Typeface for this TextView
        setTypeface(tf);

        return true;
    }
}
Copier après la connexion

Dans la mise en page XML, vous pouvez ensuite utiliser un attribut personnalisé pour spécifier le police pour chaque TextView :

<com.example.TextViewPlus
    android:layout_height="match_parent"
    android:layout_width="match_parent"
    android:text="@string/showingOffTheNewTypeface"
    foo:customFont="saxmono.ttf">
</com.example.TextViewPlus>
Copier après la connexion

Vous pouvez également utiliser des bibliothèques telles que Calligraphy pour simplifier le processus de définition de polices personnalisées sur plusieurs widgets. Ces bibliothèques fournissent un wrapper autour de TextView qui applique automatiquement la police spécifiée.

En tirant parti des classes TextView personnalisées ou de bibliothèques tierces, vous pouvez éviter les inconvénients de la définition manuelle des polices en Java et obtenir une apparence plus cohérente et élégante. pour vos widgets personnalisés.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal