Je définis un style XML pour mon application Android. J'ai quelques fichiers TTF que je veux utiliser, comment puis-je définir la police pour utiliser ces fichiers comme la police par opposition au générique "sans", "serif" & "monospace". MerciDéfinir une police spécifique dans un styles.xml
Répondre
Vous ne pouvez utiliser des polices personnalisées via le code Java, pas par la mise en page XML ou styles/thèmes - désolé!
voir le APIDemos Exemple dans la documentation.
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="CodeFont" parent="@android:style/TextAppearance.Medium">
<item name="android:layout_width">fill_parent</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:textColor">#00FF00</item>
<item name="android:typeface">monospace</item>
</style>
</resources>
J'ai créé un petit tutoriel à ce sujet ... J'espère que cela peut être utile http://spinettaro.blogspot.it/2013/01/custom-font-for-view.html
TextViewPlus.java:
package com.example;
import android.content.Context;
import android.content.res.TypedArray;
import android.graphics.Typeface;
import android.util.AttributeSet;
import android.util.Log;
import android.widget.TextView;
public class TextViewPlus extends TextView {
private static final String TAG = "TextView";
public TextViewPlus(Context context) {
super(context);
}
public TextViewPlus(Context context, AttributeSet attrs) {
super(context, attrs);
setCustomFont(context, attrs);
}
public TextViewPlus(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
setCustomFont(context, attrs);
}
private void setCustomFont(Context ctx, AttributeSet attrs) {
TypedArray a = ctx.obtainStyledAttributes(attrs, R.styleable.TextViewPlus);
String customFont = a.getString(R.styleable.TextViewPlus_customFont);
setCustomFont(ctx, customFont);
a.recycle();
}
public boolean setCustomFont(Context ctx, String asset) {
Typeface tf = null;
try {
tf = Typeface.createFromAsset(ctx.getAssets(), asset);
} catch (Exception e) {
Log.e(TAG, "Could not get typeface: "+e.getMessage());
return false;
}
setTypeface(tf);
return true;
}
}
attrs.xml: (en res/valeurs)
<?xml version="1.0" encoding="utf-8"?>
<resources>
<declare-styleable name="TextViewPlus">
<attr name="customFont" format="string"/>
</declare-styleable>
</resources>
main.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:foo="http://schemas.android.com/apk/res/com.example"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent">
<com.example.TextViewPlus
android:id="@+id/textViewPlus1"
android:layout_height="match_parent"
android:layout_width="match_parent"
android:text="@string/showingOffTheNewTypeface"
foo:customFont="saxmono.ttf">
</com.example.TextViewPlus>
</LinearLayout>
vous mettriez "saxmono.ttf" dans le dossier actifs.
Oui, vous pouvez :)
étape 1: Créez un dossier et nommez-le « police » et votre .ttf à l'intérieur. enter image description here
étape 2: Aller à style.xml et procédez comme suit: - enter image description here
étape 3: Utilisez la balise de style dans l'un objet de l'interface utilisateur: -
Avant tout cela, d'abord, vous devez mettre à jour pour mettre à jour à la bibliothèque de soutien 26 voici un lien https://segunfamisa.com/posts/custom-fonts-with-android-support-library –
- 1. Comment définir une police personnalisée dans UIWebView?
- 2. Définir dans Silverlight une image à un emplacement spécifique
- 3. Paramètre usuel attr utilisé dans styles.xml
- 4. Comment définir une police pour le texte LabelField dans Blackberry?
- 5. définir la taille de police dans jquery
- 6. Comment définir une imprimante spécifique pour un rapport?
- 7. Définir un enregistreur pour une hiérarchie d'appel spécifique
- 8. Comment rechercher une police spécifique dans un document Word avec iterop
- 9. comment définir la police familiale de taille de la police
- 10. iphone définir une taille de police fixe pour UILabels
- 11. Comment définir la police par défaut pour une application WPF?
- 12. Comment définir une ligne ou une cellule spécifique dans un gridview (vb 2008)
- 13. iTextSharp Textfield définir la police en gras
- 14. Comment définir un domaine spécifique pouvant utiliser un service ASMX?
- 15. Comment définir la taille de police à 0px dans IE6?
- 16. Quel est un bon moyen de charger une police d'application spécifique sur Qt sur Symbian?
- 17. intégrer une police dans javascript
- 18. Comment définir la police Gras, Italique et Souligné dans Qt?
- 19. Comment définir une taille de police pour une colonne particulière dans Table Vaadin?
- 20. Comment définir notre police personnalisée et la taille de police par défaut dans TinyMCE?
- 21. Comment définir la police d'un élément de l'interface utilisateur sur la police "System" dans IB?
- 22. La meilleure façon de définir les autorisations pour un utilisateur spécifique sur un dossier spécifique sur une machine distante?
- 23. définir la police gvim dans le fichier .vimrc
- 24. Comment définir un attribut Xcode dans CMake pour une configuration spécifique?
- 25. Définir conditionnellement la couleur de la police d'un élément dans une liste déroulante dans JSF
- 26. Puis-je utiliser une variable statique d'une classe Java dans res/values / styles.xml?
- 27. SSAS Reporting Services - Définir une langue/traduction spécifique
- 28. comment utiliser un dossier de police spécifique dans mon site Web?
- 29. LAMP: Définir la racine du document pour un répertoire spécifique
- 30. Comment puis-je définir une police par défaut (Inconsolata) dans mon .emacs.el dans Ubuntu?
Merci beaucoup Je vous en suis reconnaissant. – NickTFried
@ SergiCastellsaguéMillán: Cette question était pour l'utilisation de polices TTF. La réponse que vous avez liée est pour tout ** mais ** les polices TTF. – CommonsWare
Puisque c'est une vieille réponse; Savez-vous si cela a quelque chose de changé dans les versions ultérieures, @CommonsWare? Moi aussi, j'aimerais pouvoir changer les polices en les définissant dans un document ''. –