Android 1.6: "android.view.WindowManager $ BadTokenException: Fenster kann nicht hinzugefügt werden - Token null ist nicht für eine Anwendung"

Ich versuche, ein Dialogfenster zu öffnen, aber jedes Mal, wenn ich versuche, es zu öffnen, wird diese Ausnahme ausgelöst:

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)

Ich erstelle es durch Aufrufen vonshowDialog mit der ID des Displays. DasonCreateDialoghandler protokolliert gut und ich kann es ohne Probleme durchgehen, aber ich habe es angehängt, da es so aussieht, als würde mir etwas fehlen:

@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;      
}

Fehlt etwas? In einigen Fragen wurde über dieses Problem gesprochen, wenn ein Dialogfeld aus @ erstellt wurdonCreate, was passiert, weil die Aktivität noch nicht erstellt wurde, aber dies kommt von einem Aufruf von einem Menüobjekt und demappContextie Variable @ scheint im Debugger korrekt ausgefüllt zu sein.

Antworten auf die Frage(16)

Ihre Antwort auf die Frage