0

ボタンをクリックすると、「OK」ボタンだけを含むアラートダイアログボックスが表示され、クリックすると別のアクティビティに移動します。ただし、このダイアログボックスは数秒間表示され、クリックまたは確認せずにアクティビティに移動します。これは私が使用したコードです

   public void onClick(View v) {

    AlertDialog.Builder alertbox = new AlertDialog.Builder(InsertData.this);

    alertbox.setMessage("Object Location Stored!");

    alertbox.setPositiveButton("Ok", new DialogInterface.OnClickListener() {

            public void onClick(DialogInterface arg0, int arg1) {
                // the button was clicked

                Intent a = new Intent(getApplicationContext(),MainMenu.class);
                startActivity(a);
            }

        });
        alertbox.show();

    }

誰かplsは私がこれを解決するのを手伝ってくれますか?事前に感謝します。

4

2 に答える 2

2

問題が何であるかわかりません。数日前、自分で AlertDialog を含めようとしました。非推奨のメソッドがたくさんあることがわかりました。以下のコードを使用することになりました。よろしければこれをお試しください

AlertDialog ad=new AlertDialog.Builder(this).create();
        ad.setTitle(R.string.app_name);
        ad.setMessage("MESSAGE");
        ad.setButton(AlertDialog.BUTTON_POSITIVE, "OK", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int id) {
                dialog.cancel();
            }}); 
        ad.show();
于 2012-06-20T18:25:18.400 に答える
0

あなたの alertDialogs onClick が呼び出されているかどうかを見てみましょう。これにより、問題が警告ダイアログにあるのか、それ以外にあるのかがわかります。これをコピーしてアプリに貼り付けてから、showAlertDialog(); を呼び出すだけです。どこからでも。alertDialog が呼び出されたコードを投稿します。

public void showAlertDialog()
{

         AlertDialog.Builder alertDialogBuilder = new AlertDialog
            .Builder(YourActivity.this);
     alertDialogBuilder.setTitle("Look at me!");
     alertDialogBuilder
            .setMessage("Im an alert dialog")
            .setCancelable(true)
            .setNegativeButton("Okay",new DialogInterface.OnClickListener() 
            {
                public void onClick(DialogInterface dialog,int id) 
                {

                    Toast.makeText(YourActivity.this, "Alert dialog onClick",   
                                    Toast.LENGTH_SHORT).show();   

                    dialog.dismiss();

                }
            }
        );

    AlertDialog alertDialog = alertDialogBuilder.create();
    alertDialog.show();
}
于 2012-06-22T00:47:44.850 に答える