开发者

Error while placing a spinner inside Activity Group

开发者 https://www.devze.com 2023-02-02 02:08 出处:网络
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 activ

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" androi开发者_Python百科d:textColor="@android:color/darker_gray"
            android:textSize="12sp" android:textStyle="bold"
            android:layout_marginLeft="10dp" android:layout_marginTop="8dp" />


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);


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())


this may solve your problem this.getParent() i used it in my code many times. it worked f9.


Mathew his method works:

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

i folowed this method to and then my application crashes on button click. To solve this remove the onClick method out the xml file. Go to the java class and add button.setOnClickListener!

0

精彩评论

暂无评论...
验证码 换一张
取 消