web-dev-qa-db-fra.com

Comment obtenir une mise en page inflater dans un contexte?

J'écris une implémentation personnalisée d'un ListAdapter.

Dans son constructeur, je prends un contexte, un ID de ressource (c'est-à-dire un R.id.xxx représentant le fichier de mise en page), une liste et une carte (celles-ci contiennent les données).

Le problème est qu’il me faudra un LayoutInflater pour obtenir l’objet View qui se trouve dans le fichier XML de présentation séparé.

Comment puis-je obtenir le LayoutInflater étant donné le contexte seulement?

Maintenant, je pense que c’est possible, c’est que c’est assez semblable à ce qui est transmis au constructeur d’un ArrayAdapter (contexte, ressource, textViewResourceId, tableau de données), et j’imagine que le ArrayAdapter doit également utiliser un LayoutInflater n’a donné qu’un contexte.

Mais comment cela peut-il être fait?

215
Edwin Lee

Vous pouvez utiliser la méthode staticfrom() DE LA CLASSE LayoutInflater :

 LayoutInflater li = LayoutInflater.from(context);
498
Dave Webb

Vous pouvez également utiliser ce code pour obtenir LayoutInflater:

LayoutInflater li = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE)
52
NguyenDat