user3383415
user3383415

Reputation: 435

spinner in fragment null pointer

I want to use spinner in fragment, I have this code but not works, I have NullPointerException , what I am doing wrong? thank you.

public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {




    Spinner spinner_idiomas = (Spinner) getActivity().findViewById(R.id.spinner_idioma);
    spinner_idiomas.setOnItemSelectedListener(new OnItemSelectedListener() {
        @Override
        public void onItemSelected(AdapterView<?> parentView, View selectedItemView, int position, long id) {


            Toast.makeText(getActivity(), parentView.getItemAtPosition(position).toString(), Toast.LENGTH_LONG).show();
        }

        @Override
        public void onNothingSelected(AdapterView<?> parentView) {
            // your code here
        }

    });



    return inflater.inflate(R.layout.preferencias, container, false);

Upvotes: 0

Views: 573

Answers (1)

Raghunandan
Raghunandan

Reputation: 133560

Spinner spinner_idiomas = (Spinner) getActivity().findViewById(R.id.spinner_idioma);

Use the above if you are looking for a view in the activity. That is not what you want

Change to

public View onCreateView(LayoutInflater inflater, ViewGroup container,
    Bundle savedInstanceState) {

  View view = inflater.inflate(R.layout.preferencias, container, false);
  Spinner spinner_idiomas = (Spinner) view.findViewById(R.id.spinner_idioma);
  spinner_idiomas.setOnItemSelectedListener(new OnItemSelectedListener() {
   @Override
   public void onItemSelected(AdapterView<?> parentView, View selectedItemView, int position, long id) {

        Toast.makeText(getActivity(), parentView.getItemAtPosition(position).toString(), Toast.LENGTH_LONG).show();
    }

    @Override
    public void onNothingSelected(AdapterView<?> parentView) {
        // your code here
    }
    });
 return view;
 }

Upvotes: 1

Related Questions