日付選択ダイアログ
今度は趣を変えて、UIコンポーネントを使った日付の処理を紹介しましょう。Android SDKには、DatePickerDialogという日付を選択するダイアログがUIコンポーネントとして提供されています。これを使って日付の入力処理を行ってみます。
DatePickerDialogの使い方
DatePickerDialogクラスの使い方はかんたんです。インスタンスを作成し、showメソッドでダイアログを表示します。
Calendar cal = Calendar.getInstance(); // 日付選択ダイアログ DatePickerDialog dpDialog = new DatePickerDialog(this, // イベントリスナーの指定 new DatePickerDialog.OnDateSetListener() { public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) { printString(year + "年" + (monthOfYear + 1) + "月" + dayOfMonth + "日"); } }, cal.get(Calendar.YEAR), cal.get(Calendar.MONTH), cal.get(Calendar.HOUR_OF_DAY)); // タイトルを設定 dpDialog.setTitle("日付を選択してください"); // ダイアログを表示 dpDialog.show();
DatePickerDialogクラスのコンストラクタでは、コンテキストと、設定ボタンをクリックしたときのイベントリスナー、初期値を指定しています。
イベントリスナーの引数に、設定した年月日の値が渡されますので、サンプルではその値をそのまま表示しています。