arun
arun

Reputation: 245

Throwing error while selecting spinner in android

I am relatively new to android.

When i click the spinner on the phone it is throwing this error:

android.view.windowmanager$badtokenexception unable to add window --token null is not for an application

My code

List<String> list = new ArrayList<String>();
            list.add("Character");
            list.add("Numeric");
            list.add("Email");
            ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(CreateSteps.this,android.R.layout.simple_spinner_item, list);  

            LinearLayout spinnerHolder = new LinearLayout(getApplicationContext());
            spinnerHolder.setOrientation(LinearLayout.HORIZONTAL);
            spinnerHolder.setLayoutParams(
                    new LinearLayout.LayoutParams(
                        LinearLayout.LayoutParams.MATCH_PARENT, 
                        LinearLayout.LayoutParams.WRAP_CONTENT, 1f));
                final Spinner newSpinner = new Spinner(getApplicationContext());
                allSpns.add(newSpinner);
                newSpinner.setLayoutParams(
                    new Spinner.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, 
                        ViewGroup.LayoutParams.WRAP_CONTENT));
                newSpinner.setAdapter(dataAdapter);

                rAlign.addView(spinnerHolder);
                spinnerHolder.setId(MY_BUTTON);
                MY_BUTTON++;
                spinnerHolder.addView(newSpinner);

I have tried implementing the code on a phone running android 2.3.

Upvotes: 3

Views: 244

Answers (1)

Andro Selva
Andro Selva

Reputation: 54322

The problem is here,

final Spinner newSpinner = new Spinner(getApplicationContext());

Instead of passing Appliacation Context you need to pass your Activity's context,

final Spinner newSpinner = new Spinner(ActivityName.this);

Upvotes: 1

Related Questions