2012-02-23 1 views
0

Je sais comment le faire programatically en tant que tel:Comment créer une ressource < Style /> réutilisable avec une police personnalisée?

TextView txt = (TextView) findViewById(R.id.custom_font); 
    Typeface font = Typeface.createFromAsset(getAssets(), "Chantelli_Antiqua.ttf"); 
    txt.setTypeface(font); 

Mais comment faire cela comme un style qui peut être hérité et étendu? Je veux juste déclarer un TextView pour avoir un < Style /> tag

< TextView /> a un attribut appelé "typeFace" mais les valeurs valides sont seulement "normal", "sans", "serif", et " monospaces »

http://developer.android.com/reference/android/widget/TextView.html#attr_android:typeface

+2

http://stackoverflow.com/questions/2376250/ custom-fonts-and-xml-layouts-android Ce post devrait vous aider. – draksia

Répondre

1

Ce n'est pas la réponse mais j'ai trouvé une solution de contournement très triste.

étendez la classe de composants TextView

Dans le constructeur de la sous-classe, le code de feu

TextView txt = (TextView) findViewById(R.id.custom_font); 
Typeface font = Typeface.createFromAsset(context.getAssets(), "Chantelli_Antiqua.ttf"); 
txt.setTypeface(font); 

... beurk

+1

Oui. Vous faites toujours cela en code Java. Vous venez de le faire feu dans une zone différente. –

1

pour autant que je sais que vous n'êtes pas en mesure de le faire. Vous ne pouvez pas charger une police via xml et en faire un style. Cependant, j'espère vraiment que quelqu'un est capable de me prouver le contraire parce que j'adorerais que cela soit disponible.

Questions connexes