115 votes

Quel est l'équivalent de "Android:fontFamily="sans-serif-light" en code Java ?

Ma question est très simple :

Dans chacun de mes textviews, j'utilise actuellement l'attribut

android:fontFamily="sans-serif-light"

pour offrir un aspect magnifique sur les appareils post HC.

Malheureusement, cela ne fonctionne pas avec tous les widgets et pour mes Spinners, je dois écraser l'adaptateur.

@Override
public View getView(int position, View convertView, ViewGroup parent) {
    //You can use the new tf here.

    if(convertView == null || convertView.getTag() == null) {
        // new view - populate 
        convertView = inflater.inflate(android.R.layout.simple_spinner_dropdown_item, parent, false);
        convertView.setTag(new Object());
    }

    CheckedTextView spinner_text=(CheckedTextView) convertView.findViewById(android.R.id.text1);
    //Typeface should be set here...
    return spinner_text;
    }
}

Alors, y a-t-il un moyen d'obtenir exactement le même résultat par code ?

PS : Non, je ne veux pas mettre une police de caractères dans le dossier des actifs, je veux juste utiliser le système un.

6voto

Vikas Gaurav Points 114

Cela serait possible en utilisant

setTypeface(Typeface tf, int style) méthode de TextView classe.

spinner_text.setTypeface(Typeface.SANS_SERIF,Typeface.NORMAL);

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X