7
votes

Comment puis-je définir une police de caractères dans Android?

J'ai développé une application Andriod RSS Reader APP.I avez utilisé personnalisé listeView pour répertorier les titres RSS et ses images.Mous ne veut pas modifier la police de RSS TiTles.Commez-moi définir typeFace sur mon titre textview?

ici est ma classe d'adaptateur dans laquelle je définit le titre TextView. P>

Adapter.java P>

public class InternationalAdapter extends BaseAdapter {

    private Activity activity;
    private ArrayList<HashMap<String, String>> data;
    private static LayoutInflater inflater=null;
    public ImageLoader imageLoader; 

    public InternationalAdapter(Activity a, ArrayList<HashMap<String, String>> d) {
        activity = a;
        data=d;
        inflater = (LayoutInflater)activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        imageLoader=new ImageLoader(activity.getApplicationContext());
    }

    public int getCount() {
        return data.size();
    }

    public Object getItem(int position) {
        return position;
    }

    public long getItemId(int position) {
        return position;
    }

    public View getView(int position, View convertView, ViewGroup parent) {
        View vi=convertView;
        if(convertView==null)


            vi = inflater.inflate(R.layout.list_row, null);




        TextView title = (TextView)vi.findViewById(R.id.title); // For this Textview I want to set Typeface.
        TextView date = (TextView)vi.findViewById(R.id.artist);

        ImageView thumb_image=(ImageView)vi.findViewById(R.id.list_image);

        HashMap<String, String> news = new HashMap<String, String>();
        news = data.get(position);

        // Setting all values in listview
        title.setText(International.Title[position]);
        date.setText(International.Date[position]);
        imageLoader.DisplayImage(International.image[position], thumb_image);
        return vi;
    }
}


4 commentaires

Cette question a été posée à 100 reprises. Pourquoi n'avez-vous pas référé ceux-ci?


Je sais comment le faire sur une activité.Mais c'est différent.


Vous ne pouvez pas le faire sur une activité. Vous pouvez seulement le faire sur des points de vue.


Dupliqué possible de Utilisation d'une police de caractères personnalisée dans Android


7 Réponses :


1
votes
EditText edittext =(EditText) findViewById(R.id.ed);
String path="F:\\MTCORSVA.TTF";
Typeface tf=Typeface.createFromFile(path);
edittext.setTypeface(tf);
you can use this:)

0 commentaires

7
votes

Vous pouvez utiliser ceci,

        public class InternationalAdapter extends BaseAdapter {

            private Activity activity;
            private ArrayList<HashMap<String, String>> data;
            private static LayoutInflater inflater=null;
            public ImageLoader imageLoader; 

            public InternationalAdapter(Activity a, ArrayList<HashMap<String, String>> d) {
                activity = a;
                data=d;
                inflater = (LayoutInflater)activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
                imageLoader=new ImageLoader(activity.getApplicationContext());
            }

            public int getCount() {
                return data.size();
            }

            public Object getItem(int position) {
                return position;
            }

            public long getItemId(int position) {
                return position;
            }

            public View getView(int position, View convertView, ViewGroup parent) {
                View vi=convertView;
                if(convertView==null)


                    vi = inflater.inflate(R.layout.list_row, null);




                TextView title = (TextView)vi.findViewById(R.id.title); // For this Textview I want to set Typeface.
                TextView date = (TextView)vi.findViewById(R.id.artist);
//Added Here
        Typeface font = Typeface.createFromAsset(
        activity.getAssets(), 
        "fonts/androidnation.ttf");
    title .setTypeface(font);

                ImageView thumb_image=(ImageView)vi.findViewById(R.id.list_image);

                HashMap<String, String> news = new HashMap<String, String>();
                news = data.get(position);

                // Setting all values in listview
                title.setText(International.Title[position]);
                date.setText(International.Date[position]);
                imageLoader.DisplayImage(International.image[position], thumb_image);
                return vi;
            }
        }


3 commentaires

J'ai utilisé cette méthode mais dans Eclipse, il y a une erreur. "La méthode getContext () est indéfinie pour le type internationalAdpater" ..


Au lieu de getContext () essayer avec activité


La plupart des bienvenues ... :) Codage heureux .. :)



3
votes

Essayez comme ça

Typeface font = Typeface.createFromAsset(
    getContext().getAssets(), 
    "fonts/androidnation.ttf");
title .setTypeface(font);


0 commentaires

0
votes

Utilisez Custome TextView comme indiqué ci-dessous et définissez la police là-bas

      MyTextView title = (MyTextView)vi.findViewById(R.id.title); 


0 commentaires

0
votes

Vous pouvez utiliser cette bibliothèque pour modifier la police de n'importe quelle vue, mais seulement passer le nom du fichier de police avec le code XML de liaison. https://github.com/chathurahettarachchi/typeFaCed

1.TextView < p> 2.EDittTtText

3.switch

4.Toggle

5.button

6.Radiobutton < p> 7.Checkbox xxx


0 commentaires

-1
votes

Nous pouvons également utiliser cette méthode:

t.setTypeface(Typeface.MONOSPACE,Typeface.BOLD);


0 commentaires

2
votes

Source: https://segunfamisa.com/posts/custom -Font-with-Android-support-Bibliothèque

Paramètres de typeFace comme celui ci-dessous ne fonctionne pas souvent ( ANDROID Runtime Exceptions de police non trouvée non trouvée ) xxx

et peut entraîner une erreur comme celle-ci: < PRE> XXX

Vous pouvez donc utiliser la nouvelle façon, comme indiqué ici

Étapes:

1. Faites un dossier dans le dossier Ressources dans votre projet, comme Res / Font et coller vos polices là-bas

Vous pouvez également créer une famille de polices

la famille de polices est quelque chose Cela a été introduit dans Android et il est utilisé pour définir un groupe de polices et de leur style correspondant. Le système peut donc déterminer la ressource de police à utiliser pour les styles réguliers, audacieux et en italique et les configurations de poids. Une famille de polices typique ressemble à ceci: xxx

note

une chose vraiment importante à noter est que nous avons dû définir des attributs à l'aide d'espaces de nom Android et d'applications . L'espace de noms de l'application est ce qui garantit que la fonctionnalité est compatible en arrière.

2. Utilisation de la police programmatiquement xxx

source: https://segunfamisa.com/posts/custom-font-with-android-support-library

J'espère que cela aide :)


0 commentaires