2010-12-31 15 views
9

3 aktiviteyi içeren bir aktivite grubum var. Bir düğmeye basıldığında, bu etkinlik grubuna giriyorum ve 1. etkinliği gösteriyorum. 1. aktiviteden 2. aktiviteyi yapabilirim ve 2. aktiviteden 3. aktiviteyi yapabilirim.Etkinlik Grubunun içine bir döndürücü yerleştirilirken hata oluştu

Bu 3 etkinlik düzeninde bir döndürücüm var. Sorun şu çeviriciyi tıklayamıyorum. Hata şu şekilde gösteriliyor:

12-31 11:29:41.082: ERROR/AndroidRuntime(474): android.view.WindowManager$BadTokenException: Unable to add window -- token [email protected] is not valid; is your activity running? 

Bu sorunu nasıl çözebilirim? requestinfo.xml İçinde

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

,

<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" /> 
+0

Bazı kodların kaydedilmesi daha iyi bir yanıt almanıza yardımcı olabilir – ninjasense

+0

Aynı sorunu yaşadım ve Mathew'un önerdiği şeyi takip ettim. Gerçekten işe yaradı. – Nitish

cevap

44

Hata, setContentView ile yapıldı. Ben Bunun yerine vermelidir bunun

setContentView(R.layout.mylayout); 

,

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

verilen Ve spinner kodudur vardı:

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

Vay canına, harika , çok teşekkür ederim –

+2

Ben aynı sorun var ve cevabım benim sorunumdan çıktı bana yardımcı oldu – Dharmendra

+0

Ben aynı sorun var teşekkür ederim ama düzeltemedim ... Lütfen bana yardım edin http://stackoverflow.com/questions/ 7609519/android-spinner-error-android-view-windowmanagerbadtokenexception-yapamaz-a- – Piraba

1

ekleyebilir spiner.setDropDownViewResource: herkes plz ...

Hi,

ekli spinner kodunu bulabilirsiniz yardım edebilir()? ve başlatmanızda, bu ya da getApplicationContext() adlı bağlamı kullanırsınız, örneğin, AlertDialog.Builder (xxx.this) => AlertDialog.Builder (this.getParent())

+0

Ekledim .. ama aynı hata ... – Mathew

0

bu sorununuzu çözebilir this.getParent() Kodumu birçok kez kullandım. f9 çalıştı.

+1

Eklendi ... ama yapamayacağım iğneler için ... diğer diyaloglar geliyor ... aynı hata şimdi de ... :( – Mathew

0

Mathew Onun yöntemi çalışır:

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

ben katledim Bu yöntem için ve sonra benim uygulama düğmesine tıklandığında çöküyor. Bunu çözmek için, onClick yöntemini xml dosyasını kaldırın. java sınıfına gidin ve button.setOnClickListener ekleyin!

İlgili konular