Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Error while placing a spinner inside Activity Group

Tags:

android

I have an activity group containing 3 activities. When a button is pressed, I enter into this activity group and show the 1st activity. From the 1st activity I can goto 2nd activity and from 2nd activity I can goto 3rd activity.

I have a spinner in this 3rd activity layout. Problem is I am not able to click on that spinner. Error gets displayed showing:

12-31 11:29:41.082: ERROR/AndroidRuntime(474): android.view.WindowManager$BadTokenException: Unable to add window -- token android.app.LocalActivityManager$LocalActivityRecord@43791b18 is not valid; is your activity running?

How can I solve this issue? Can anyone plz help...

Hi,

Please find the code for spinner attached:

setContentView(R.layout.requestinfo);
Spinner spinner = (Spinner) findViewById(R.id.spinner);
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
            PGDealerInfoRequestActivity.this, R.array.request_options, android.R.layout.simple_spinner_item);
    spinner.setAdapter(adapter);

Inside requestinfo.xml,

<Spinner android:id="@+id/spinner" android:layout_width="wrap_content"
            android:layout_height="wrap_content" android:textColor="@android:color/darker_gray"
            android:textSize="12sp" android:textStyle="bold"
            android:layout_marginLeft="10dp" android:layout_marginTop="8dp" />
like image 493
Anju Avatar asked Dec 31 '10 06:12

Anju


2 Answers

The error was with the setContentView. I had given

setContentView(R.layout.mylayout);

Instead of that we should give,

View viewToLoad = LayoutInflater.from(this.getParent()).inflate(R.layout.mylayout, null);
this.setContentView(viewToLoad);  

And the spinner code is:

Spinner spinner = (Spinner) findViewById(R.id.spinner);

ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
            this, R.array.request_options, android.R.layout.simple_spinner_item);
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_item);
    spinner.setAdapter(adapter);
like image 97
Anju Avatar answered Sep 23 '22 11:09

Anju


can you add spiner.setDropDownViewResource()?and in your initialization ,you use context called this or getApplicationContext(),for example AlertDialog.Builder(xxx.this) => AlertDialog.Builder(this.getParent())

like image 34
pengwang Avatar answered Sep 21 '22 11:09

pengwang