How to Get a Layout Inflater Given a Context?

Edwin Lee picture Edwin Lee · Feb 6, 2010 · Viewed 110.6k times · Source

I am writing a custom implementation of a ListAdapter.

In its constructor, I'm taking in a Context, a resource ID (i.e. R.id.xxx representing the layout file), and a list and a map (these contain the data).

Now, the problem is that i will need a LayoutInflater to get the View object which is in the separate layout XML file.

How can I get hold of the LayoutInflater given only the Context?

Now, why I think this is possible, is that this is quite similar to what is being passed in to the constructor of an ArrayAdapter (context, resource, textViewResourceId, data array), and I figure the ArrayAdapter also has to make use of a LayoutInflater given only a Context.

But how can it be done?

Answer

Dave Webb picture Dave Webb · Feb 6, 2010

You can use the static from() method from the LayoutInflater class:

 LayoutInflater li = LayoutInflater.from(context);