TimePickerDialog を使ってみた

TimePickerDialog は
java.lang.Object
  ↳ android.app.Dialog
    ↳ android.app.AlertDialog
      ↳ android.app.TimePickerDialog
を使います

というわけで、TimePickerDialog をいじってみた

サンプルプログラム
import java.util.Calendar;

import android.app.Activity;
import android.app.TimePickerDialog;
import android.app.TimePickerDialog.OnTimeSetListener;
import android.content.DialogInterface;
import android.os.Bundle;
import android.widget.TextView;
import android.widget.TimePicker;

public class TimePickerDialogTest extends Activity {
  final Calendar calendar = Calendar.getInstance();
  // カレンダーから現在の '時' を取得
  int mHour = calendar.get(Calendar.HOUR_OF_DAY);
  // カレンダーから現在の '分' を取得
  int mMinute = calendar.get(Calendar.MINUTE);

  TimePickerDialog timePickerDialog;

  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    
    // TImePickerDialog の時刻が変更された時に呼び出されるコールバックを登録
    TimePickerDialog.OnTimeSetListener listener = new TimePickerDialog.OnTimeSetListener() {
      public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
        mHour = hourOfDay; // '時' を取得
        mMinute = minute;  // '分' を取得
      }
    };

    // TimePickerDialog の作成
    timePickerDialog = new TimePickerDialog(
      this,     // 第1引数 : Context
      listener, // 第2引数 : TimePickerDialog.OnTimeSetListener
      mHour,    // 第3引数 : 時
      mMinute,  // 第4引数 : 分
      true      // 第5引数 : 24時間表示(true)かAM/PM表示(false)か
    );

    // Dialog の Positive Button を設定
    timePickerDialog.setButton(
      DialogInterface.BUTTON_POSITIVE,
      "Positive", 
      new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int which) {
          // Positive Button がクリックされた時の動作
        }
      }    
    );

    // Dialog の Negative Button を設定
    timePickerDialog.setButton(
      DialogInterface.BUTTON_NEGATIVE, 
      "Negative", 
      new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int which) {
          // Negative Button がクリックされた時の動作
        }
      }
    );
  
    // Dialog の Neutral Button を設定
    timePickerDialog.setButton(
      DialogInterface.BUTTON_NEUTRAL, 
      "Neutral", 
      new DialogInterface.OnClickListener() {
        public void onClick(DialogInterface dialog, int which) {
          // Neutral Button がクリックされた時の動作
        }
      }
    );

    // TimePickerDialog の表示
    timePickerDialog.show();
  }
}

プログラムを実行すると...


AM/PM表示のとき

こんな感じ!

0 件のコメント:

コメントを投稿