SORU
14 NİSAN 2010, ÇARŞAMBA


Android 1.6: "android.görünüm.Pencere$BadTokenException: window -- eklemenin token boş bir uygulama"

Bir iletişim penceresi açmak için çalışıyorum, ama bunu açmaya her zaman bu istisna atar:

Uncaught handler: thread main exiting due to uncaught exception
android.view.WindowManager$BadTokenException: 
     Unable to add window -- token null is not for an application
  at android.view.ViewRoot.setView(ViewRoot.java:460)
  at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:177)
  at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:91)
  at android.app.Dialog.show(Dialog.java:238)
  at android.app.Activity.showDialog(Activity.java:2413)

Görüntü ıd ile showDialog çağırarak yaratıyorum. onCreateDialog işleyicisi iyi günlükleri ve bir sorun olmadan adım olabilir, ama bir şeyler eksik gibi hissediyorum beri ekledim:

@Override
public Dialog onCreateDialog(int id)
{
    Dialog dialog;
    Context appContext = this.getApplicationContext();
    switch(id)
    {
        case RENAME_DIALOG_ID:
            Log.i("Edit", "Creating rename dialog...");
            dialog = new Dialog(appContext);
            dialog.setContentView(R.layout.rename);
            dialog.setTitle("Rename "   noteName);
            break;
        default:
            dialog = null;
            break;
    }
    return dialog;      
}

Bu eksik bir şey var mı? Bazı sorularım var hakkında konuştuk olan bu sorun oluştururken bir iletişim onCreate, olan olur, çünkü etkinlik değil oluşturulan henüz, ama bu gelen bir çağrı bir menü nesnesi ve appContext değişken gibi doğru nüfuslu hata ayıklayıcısını.

CEVAP
14 NİSAN 2010, ÇARŞAMBA


bu hat yani: İçerik = bu appContext.() getApplicationContext; gitmeli ve yerine içinde bulunduğun faaliyet gösteren bir işaretçi (muhtemelen bu) kullanın.

Bu bugün beni ısırdı, can sıkıcı kısmı bu() getApplicationContextdeveloper.android.com : verbatim(

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Autocar

    Autocar

    11 Mart 2006
  • FILIPeeeK

    FILIPeeeK

    22 Mayıs 2006
  • Fraser Raft

    Fraser Raft

    9 Mart 2010