Java 从OnOptions ItemSelected显示对话框

Java 从OnOptions ItemSelected显示对话框,java,android,Java,Android,我试图从菜单工具栏显示我的AlertDialog,但出现以下代码异常: case R.id.about: { final AlertDialog.Builder aboutDialog = new AlertDialog.Builder(SplashActivity.this); aboutDialog.setTitle(mCtx.getResources() .getString(R.string.about_tests)) .setCancel

我试图从菜单工具栏显示我的AlertDialog,但出现以下代码异常:

case R.id.about: {
    final AlertDialog.Builder aboutDialog = new AlertDialog.Builder(SplashActivity.this);
    aboutDialog.setTitle(mCtx.getResources()
        .getString(R.string.about_tests))
        .setCancelable(true)                           
        .setMessage(mCtx.getResources().getString(R.string.description_tests))                        
        .setPositiveButton(mCtx.getResources().getString(R.string.ok), new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int arg1) {
                googleRateClick();
            }
        })
        .setNegativeButton(mCtx.getResources().getString(R.string.not_now), new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int arg1) {
                dialog.dismiss();
            }
        });

    aboutDialog.show();
}
1433-1433/MYPACKAGE E/WindowManager﹕ android.view.WindowLeaked:Activity MYPACKAGE.Activity.SplashActivity泄漏了最初添加到此处的window com.android.internal.policy.impl.PhoneWindow$DecorView{d3dca6c V.E…..R…D 0,0-729665}
在android.view.ViewRootImpl。(ViewRootImpl.java:363)
在android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:261)
在android.view.WindowManagerImpl.addView(WindowManagerImpl.java:69)
在android.app.Dialog.show(Dialog.java:298)
在android.app.AlertDialog$Builder.show上(AlertDialog.java:987)
在MYPACKAGE.SplashActivity.onOptionsItemSelected中(SplashActivity.java:90)

您忘记了
中断指令。

我想这是你的问题。您不妨检查是否调用
finish()方法,因为此错误通常会告诉您对话框是从关闭的活动显示的

您忘记了
中断指令。

我想这是你的问题。您不妨检查是否调用
finish()方法,因为此错误通常会告诉您对话框是从关闭的活动显示的

您忘记了
中断指令。

我想这是你的问题。您不妨检查是否调用
finish()方法,因为此错误通常会告诉您对话框是从关闭的活动显示的

您忘记了
中断指令。

我想这是你的问题。您不妨检查是否调用
finish()方法,因为此错误通常会告诉您对话框是从关闭的活动显示的

答案是不要将getApplicationContext()传递到对话框生成器

答案是不要将getApplicationContext()传递到对话框生成器

答案是不要传递getApplicationContext()进入Dialog Builder

答案是不要将getApplicationContext()传递到Dialog Builder

是的,我的坏习惯是break,但它没有帮助。也许这是因为模拟器。是的,我的坏与休息,但它没有帮助。也许这是因为模拟器。是的,我的坏与休息,但它没有帮助。也许这是因为模拟器。是的,我的坏与休息,但它没有帮助。可能是因为emulator。您是否检查了其他android.view.WindowLeaked问题()是的,上下文是问题。您是否检查了其他android.view.WindowLeaked问题()是的,上下文是问题。您是否检查了其他android.view.WindowLeaked问题()是的,上下文是问题所在。您是否检查了其他android.view.WindowLooked问题()是的,上下文是问题所在。
1433-1433/MYPACKAGE E/WindowManager﹕ android.view.WindowLeaked: Activity MYPACKAGE.activity.SplashActivity has leaked window com.android.internal.policy.impl.PhoneWindow$DecorView{d3dca6c V.E..... R......D 0,0-729,665} that was originally added here
                at android.view.ViewRootImpl.<init>(ViewRootImpl.java:363)
                at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:261)
                at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:69)
                at android.app.Dialog.show(Dialog.java:298)
                at android.app.AlertDialog$Builder.show(AlertDialog.java:987)
                at MYPACKAGE.SplashActivity.onOptionsItemSelected(SplashActivity.java:90)