2011-09-13 21 views
1

AlertDialogでは、ネガティブボタンとポジティブボタンという2種類のボタンを使用できます。しかし、2つ以上のボタンを使用したい場合、私は何をする必要がありますか?次のプログラムが動作していない ...2つ以上のボタンをダイアログボックスで使用する方法

AlertDialog.Builder alert = new AlertDialog.Builder(
         QuizActivity.this); 
       alert.setTitle("Quiz Result"); 
       alert.setMessage("Correct Answer: " 
         + scoreMode.getCorrectAnswer() + "\n" 
         + "Wrong Answer: " + scoreMode.getWrongAnswer() 
         + "\n" + "Total Score: " 
         + scoreMode.getScorePoint() + "\n" 
         + "Bonus Score: " + scoreMode.getBonusPoint()); 
       alert.setPositiveButton("Save result", 
         new DialogInterface.OnClickListener() { 
          public void onClick(DialogInterface arg0, 
            int arg1) { 
           showSaveResultDailog(scoreMode 
             .getScorePoint()); 
          } 

         }); 
       alert.setNegativeButton("Play Again", 
         new DialogInterface.OnClickListener() { 
          public void onClick(DialogInterface arg0, 
            int arg1) { 
           Intent i = new Intent(QuizActivity.this, 
             QuizOptionActivity.class); 
           startActivity(i); 
          } 
         }); 
       alert.setNegativeButton("Back to Main Menu", 
         new DialogInterface.OnClickListener() { 
          public void onClick(DialogInterface arg0, 
            int arg1) { 
           Intent i = new Intent(QuizActivity.this, 
             HomeActivity.class); 
           startActivity(i); 
          } 
         }); 
       alert.show(); 

答えて

1

またsetNeutralButton()を使用することができます。しかしそれはそれです(理由のために)。ダイアログには、より多くのボタンが詰まっています。他のオプションが必要な場合は、通常のアクティビティを作成するか、別のダイアログタイプ(リスト付きのAlertDialogなど)に切り替えます。

10

setNeutralButton(..)で3番目のボタンを設定することもできます。

AlertDialogの3つのボタンは最大です。それ以上の場合は、Dialogを使用し、setContentView(view)でカスタムビューを設定する必要があります。このビューでは、ボタン、レイアウト、ウィジェットなどのコンテンツを自由に作成できます。

関連する問題