getLayoutInflater() in fragment

I'm trying to show my results search in a ListView on the Fragment, but it fails on:

LayoutInflater inflater = getLayoutInflater();

The method getLayoutInflater(Bundle) in the type Fragment is not applicable for the arguments ()

This is my code:

public View getView(int position, View convertView, ViewGroup parent) { LayoutInflater inflater = getLayoutInflater(); View row; row = inflater.inflate(R.layout.list_single, parent, false); TextView textview = (TextView) row.findViewById(R.id.TextView01); ImageView imageview = (ImageView) row .findViewById(R.id.ImageView01); textview.setText(data_text[position]); imageview.setImageResource(data_image[position]); return (row); }

How can I fix this?

1

5 Answers

if you are in a fragment you want

getActivity().getLayoutInflater();

or

LayoutInflater.from(getActivity());

also you can do

View.inflate();

or

LayoutInflater inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
5

In Activity you can use like this:

this.getLayoutInflater();

For Fragment you need to replace keyword "this" with "getActivity()"

getActivity().getLayoutInflater();

Hope this will help!

Now and don't know from when you can get it in your Fragment(support library v4) by

getLayoutInflater(null);
2

If you want to inflate layout (attach child layout to parent) in Fragment

Use this code

LayoutInflater inflater = (LayoutInflater) getActivity() .getSystemService(Context.LAYOUT_INFLATER_SERVICE);

Now to Inflate child layout

View view = inflater.inflate(R.layout.layout_child, null);

Happy coding :)

Use it:

LayoutInflater inflater = (LayoutInflater)getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
1

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

You Might Also Like