1

次のコードを使用しました。

Alertdialog alertDialog =null;
AlertDialog.Builder builder=new Builder(this);
        builder.setTitle(title);
        builder.setMessage(message);

        builder.setPositiveButton("OK", new DialogInterface.OnClickListener() {

            public void onClick(DialogInterface dialog, int which) {

            }
        });
        alertDialog=builder.create();
        builder.create().show();

ホームキーをクリックすると([OK]ボタンにユーザーイベントが表示されない場合)、次のコードを使用してアラートダイアログを閉じます。

@Override
    protected void onPause() {

            if(alertDialog != null){
               alertDialog.dismiss();
            }

        }

        super.onPause();
    }

アプリケーションを再起動しても、アラートダイアログは消えません。

私が間違ったことは何ですか?

4

2 に答える 2

2

問題は、ここで 2 つの AlertDialog インスタンスを作成したことです。

alertDialog=builder.create();
builder.create().show();

次に、実際には表示されていないダイアログで、dismiss() を呼び出しました。これで問題が解決するはずです:

alertDialog=builder.show();
于 2013-01-05T14:04:49.183 に答える