2

AndroidのDialogのポジティブボタンとネガティブボタンにアクセスしたい。ダイアログの複数回の表示を制限したいのはなぜですか。そのため、これらのボタンにアクセスする必要があります。しかし、私はアクセスする方法がわかりません。調査しましたが、結果はアラートダイアログのみであり、ダイアログではありません。

Dialog mDialog = new DatePickerDialog(IncomeActivity.this,
                 mDatesetListener, calender.get(Calendar.YEAR),
             calender.get(Calendar.MONTH), calender
             .get(Calendar.DAY_OF_MONTH));
mDialog.show();  

次のコードを試しました。しかし、それは私を助けません。

mDialog.setOnCancelListener(new OnCancelListener() {
        public void onCancel(DialogInterface arg0) {
                                isDateClicked = false;
        }
});

isDateClickedboolean値です。mDIalogを開く前に、私はそれをと言いましたtrue。ここで、ダイアログを閉じている間、falseとして設定します。このmDialogのポジティブボタンとネガティブボタンにアクセスする方法。

4

4 に答える 4

4

こんにちは、アラートダイアログを使用できるので、ポジティブボタンとネガティブボタンを管理できます。以下のコードを試してください。

 AlertDialog.Builder builder = new AlertDialog.Builder(AddSchedule.this);
 builder.setIcon(android.R.drawable.ic_dialog_info);
 builder.setTitle("Alert dialog title");
 builder.setMessage("Dialog message");
 builder.setPositiveButton("Button1", new DialogInterface.OnClickListener() {
 public void onClick(DialogInterface arg0, int arg1) {
    //DO TASK
  }
  });
 builder.setNegativeButton("Button2", new DialogInterface.OnClickListener() {
 public void onClick(DialogInterface arg0, int arg1) {
    //DO TASK
 }
});

AlertDialog dialog = builder.create();
dialog.show();
于 2013-03-07T05:54:55.297 に答える
2

vmironovが言ったように、私は答えを見つけました。vmironovをどうもありがとう。答えは

mDialog.setOnDismissListener(new OnDismissListener() {
        public void onDismiss(DialogInterface arg0) {
            isDateClicked = no;
        }
});
于 2013-03-07T06:03:39.737 に答える
1

mDialog.isShowing()を使用して、ダイアログがすでに起動しているかどうかを知ることができます。

于 2013-03-07T05:59:49.367 に答える
0

この方法で、ダイヤルボックスの[ OK ]ボタンと[キャンセル]ボタンを使用できます。

AlertDialog.Builder builder = new AlertDialog.Builder(this);
    builder.setTitle("title");
    builder.setIcon(R.drawable.launcher);
    builder.setMessage("Are you sure you want to exit?")
           .setCancelable(false)
           .setPositiveButton("Yes", new DialogInterface.OnClickListener() {
               public void onClick(DialogInterface dialog, int id) {
                    Display_questions.this.finish(); // using this current activity is closed
                         // Do task here

               }
           })
           .setNegativeButton("No", new DialogInterface.OnClickListener() {
               public void onClick(DialogInterface dialog, int id) {
                    dialog.cancel();   // using this dialog box is closed.
               }
           });
    AlertDialog alert = builder.create();
     alert.show();

幸運を。

于 2013-03-07T06:06:55.293 に答える