package com.example.examples_04_11;import java.util.Calendar;import android.app.Activity;import android.app.DatePickerDialog;import android.app.TimePickerDialog;import android.app.TimePickerDialog.OnTimeSetListener;import android.os.Bundle;import android.view.Menu;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.DatePicker;import android.widget.DatePicker.OnDateChangedListener;import android.widget.TextView;import android.widget.TimePicker;import android.widget.TimePicker.OnTimeChangedListener;public class MainActivity extends Activity {private TextView m_TextView;private DatePicker m_DatePicker;private TimePicker m_TimePicker;private Button m_dpButton, m_tpButton;private Calendar m_Calendar;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);m_Calendar = Calendar.getInstance();m_TextView = (TextView)findViewById(R.id.TextView01);m_dpButton = (Button)findViewById(R.id.button1);m_tpButton = (Button)findViewById(R.id.button2);m_DatePicker = (DatePicker)findViewById(R.id.DatePicker01);//將日曆初始化為當前的系統時間,並設定其事件監聽m_DatePicker.init(m_Calendar.get(Calendar.YEAR), m_Calendar.get(Calendar.MONTH), m_Calendar.get(Calendar.DAY_OF_MONTH), new OnDateChangedListener() {@Overridepublic void onDateChanged(DatePicker view, int year, int monthOfYear,int dayOfMonth) {// TODO Auto-generated method stubm_Calendar.set(year, monthOfYear, dayOfMonth);}});m_TimePicker = (TimePicker)findViewById(R.id.TimePicker01);m_TimePicker.setIs24HourView(true);//監聽時間改變m_TimePicker.setOnTimeChangedListener(new OnTimeChangedListener() {@Overridepublic void onTimeChanged(TimePicker view, int hourOfDay, int minute) {// TODO Auto-generated method stub//m_Calendar.set(year, month, day, hourOfDay, minute, second);}});m_dpButton.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubnew DatePickerDialog(MainActivity.this, new DatePickerDialog.OnDateSetListener() {@Overridepublic void onDateSet(DatePicker view, int year, int monthOfYear,int dayOfMonth) {// TODO Auto-generated method stub}},m_Calendar.get(Calendar.YEAR), m_Calendar.get(Calendar.MONTH), m_Calendar.get(Calendar.DAY_OF_MONTH)).show();}});m_tpButton.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {// TODO Auto-generated method stubnew TimePickerDialog(MainActivity.this, new OnTimeSetListener() {@Overridepublic void onTimeSet(TimePicker view, int hourOfDay, int minute) {// 設定時間}}, m_Calendar.get(Calendar.HOUR_OF_DAY), m_Calendar.get(Calendar.MINUTE), true).show();}});}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {// Inflate the menu; this adds items to the action bar if it is present.getMenuInflater().inflate(R.menu.main, menu);return true;}}
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <TextView android:id="@+id/TextView01" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello_world" /><DatePicker android:id="@+id/DatePicker01" android:layout_below="@id/TextView01" android:layout_width="wrap_content" android:layout_height="wrap_content"/><TimePicker android:id="@+id/TimePicker01" android:layout_below="@id/DatePicker01" android:layout_width="wrap_content" android:layout_height="wrap_content"/><Button android:id="@+id/button1" android:layout_below="@id/TimePicker01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="設定日期"/><Button android:id="@+id/button2" android:layout_below="@id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="設定時間"/></RelativeLayout>