【Android】AlertDialogの表示(YES/NOボタン付き)

今回は「YES/NOボタン」付きのダイアログの表示方法です。
ボタンを押すと、下記のようなダイアログを表示します。

YES/NOボタン付きダイアログ

●ソースコード

「R.layout.main」にボタンを配置し、
「android:onClick=”BtnClick”」を設定し使用するソースです。

public class TestDialog extends Activity {
	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
	}

	//ボタンクリックイベント(XMLにandroid:onClickを記述)
	public void BtnClick(View v) {
		if(v.getId() == R.id.button0)
		{
			showDialog(0);
		}
	}

	@Override
	protected Dialog onCreateDialog(int id) {

		// ダイアログが複数ある場合にidを使用する
		if (id == 0) {
			Dialog dialog = super.onCreateDialog(id);
			AlertDialog.Builder builder = new AlertDialog.Builder(this);
			builder.setCancelable(false);
			builder.setIcon(android.R.drawable.ic_dialog_alert);
			builder.setTitle("YES/NOダイアログ");
			builder.setMessage("ダイアログのテストです!");
			builder.setPositiveButton("YES",
				new DialogInterface.OnClickListener() {
					public void onClick(DialogInterface dialog, int whichButton) {
						//YESボタンを押した時の処理があればここに記述する
					}
				});
			builder.setNegativeButton("NO",
				new DialogInterface.OnClickListener() {
					public void onClick(DialogInterface dialog, int whichButton) {
						//NOボタンを押した時の処理があればここに記述する
					}
				});
			dialog = builder.create();
		}
	}

	@Override
	protected void onPrepareDialog(int id, Dialog dialog) {
		super.onPrepareDialog(id, dialog);

		if (id == 0) {
			//ダイアログの内容に変更がある場合に記述
		}
	}
}

スポンサード リンク


return top